backend: gl: fix use-after-scope

'format' was pointing to an array with a shorter lifetime

suggested by @tryone144

Co-authored-by: Bernd Busse <bernd@busse-net.de>
This commit is contained in:
Yuxuan Shui 2022-12-02 02:57:28 +00:00 committed by GitHub
parent d38b0ead7d
commit 236c8228b8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 2 additions and 4 deletions

View File

@ -919,10 +919,8 @@ bool gl_init(struct gl_data *gd, session_t *ps) {
// Set up the size and format of the back texture
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, gd->back_fbo);
glDrawBuffer(GL_COLOR_ATTACHMENT0);
const GLint *format = (const GLint[]){GL_RGB8, GL_RGBA8};
if (gd->dithered_present) {
format = (const GLint[]){GL_RGB16, GL_RGBA16};
}
const GLint *format = gd->dithered_present ? (const GLint[]){GL_RGB16, GL_RGBA16}
: (const GLint[]){GL_RGB8, GL_RGBA8};
for (int i = 0; i < 2; i++) {
gd->back_format = format[i];
gl_resize(gd, ps->root_width, ps->root_height);