From f265e049a8e409b6601de382ee02c6082cd39f7e Mon Sep 17 00:00:00 2001 From: Yuxuan Shui Date: Tue, 6 Feb 2024 13:16:12 +0000 Subject: [PATCH] backend: gl: don't leak resources Signed-off-by: Yuxuan Shui --- src/backend/gl/gl_common.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/backend/gl/gl_common.c b/src/backend/gl/gl_common.c index 22c74ba..badbd9b 100644 --- a/src/backend/gl/gl_common.c +++ b/src/backend/gl/gl_common.c @@ -989,10 +989,25 @@ void gl_deinit(struct gl_data *gd) { gl_destroy_window_shader(&gd->base, gd->default_shader); gd->default_shader = NULL; } + glDeleteProgram(gd->dummy_prog); + if (gd->present_prog != gd->dummy_prog) { + glDeleteProgram(gd->present_prog); + } + gd->dummy_prog = 0; + gd->present_prog = 0; + + glDeleteProgram(gd->fill_shader.prog); + glDeleteProgram(gd->brightness_shader.prog); + glDeleteProgram(gd->shadow_shader.prog); + gd->fill_shader.prog = 0; + gd->brightness_shader.prog = 0; + gd->shadow_shader.prog = 0; glDeleteTextures(1, &gd->default_mask_texture); glDeleteTextures(1, &gd->back_texture); + glDeleteQueries(2, gd->frame_timing); + gl_check_err(); }