1
0
Fork 0

cogl/gl: Use g_auto (GStrv) and g_autofree in more cases

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3907>
This commit is contained in:
Sebastian Wick 2024-07-31 13:46:44 +02:00 committed by Marge Bot
parent da2e931355
commit 74917e1b07
2 changed files with 4 additions and 14 deletions

View file

@ -420,7 +420,7 @@ _cogl_driver_update_features (CoglContext *ctx,
{ {
unsigned long private_features unsigned long private_features
[COGL_FLAGS_N_LONGS_FOR_SIZE (COGL_N_PRIVATE_FEATURES)] = { 0 }; [COGL_FLAGS_N_LONGS_FOR_SIZE (COGL_N_PRIVATE_FEATURES)] = { 0 };
char **gl_extensions; g_auto (GStrv) gl_extensions = 0;
const char *glsl_version; const char *glsl_version;
int gl_major = 0, gl_minor = 0; int gl_major = 0, gl_minor = 0;
int i; int i;
@ -445,7 +445,7 @@ _cogl_driver_update_features (CoglContext *ctx,
if (G_UNLIKELY (COGL_DEBUG_ENABLED (COGL_DEBUG_WINSYS))) if (G_UNLIKELY (COGL_DEBUG_ENABLED (COGL_DEBUG_WINSYS)))
{ {
char *all_extensions = g_strjoinv (" ", gl_extensions); g_autofree char *all_extensions = g_strjoinv (" ", gl_extensions);
COGL_NOTE (WINSYS, COGL_NOTE (WINSYS,
"Checking features\n" "Checking features\n"
@ -457,8 +457,6 @@ _cogl_driver_update_features (CoglContext *ctx,
ctx->glGetString (GL_RENDERER), ctx->glGetString (GL_RENDERER),
_cogl_context_get_gl_version (ctx), _cogl_context_get_gl_version (ctx),
all_extensions); all_extensions);
g_free (all_extensions);
} }
_cogl_get_gl_version (ctx, &gl_major, &gl_minor); _cogl_get_gl_version (ctx, &gl_major, &gl_minor);
@ -543,8 +541,6 @@ _cogl_driver_update_features (CoglContext *ctx,
for (i = 0; i < G_N_ELEMENTS (private_features); i++) for (i = 0; i < G_N_ELEMENTS (private_features); i++)
ctx->private_features[i] |= private_features[i]; ctx->private_features[i] |= private_features[i];
g_strfreev (gl_extensions);
if (!COGL_FLAGS_GET (private_features, COGL_PRIVATE_FEATURE_TEXTURE_SWIZZLE)) if (!COGL_FLAGS_GET (private_features, COGL_PRIVATE_FEATURE_TEXTURE_SWIZZLE))
{ {
g_set_error (error, g_set_error (error,

View file

@ -570,7 +570,7 @@ _cogl_driver_update_features (CoglContext *context,
{ {
unsigned long private_features unsigned long private_features
[COGL_FLAGS_N_LONGS_FOR_SIZE (COGL_N_PRIVATE_FEATURES)] = { 0 }; [COGL_FLAGS_N_LONGS_FOR_SIZE (COGL_N_PRIVATE_FEATURES)] = { 0 };
char **gl_extensions; g_auto (GStrv) gl_extensions = 0;
int gl_major, gl_minor; int gl_major, gl_minor;
int i; int i;
@ -588,7 +588,7 @@ _cogl_driver_update_features (CoglContext *context,
if (G_UNLIKELY (COGL_DEBUG_ENABLED (COGL_DEBUG_WINSYS))) if (G_UNLIKELY (COGL_DEBUG_ENABLED (COGL_DEBUG_WINSYS)))
{ {
char *all_extensions = g_strjoinv (" ", gl_extensions); g_autofree char *all_extensions = g_strjoinv (" ", gl_extensions);
COGL_NOTE (WINSYS, COGL_NOTE (WINSYS,
"Checking features\n" "Checking features\n"
@ -600,8 +600,6 @@ _cogl_driver_update_features (CoglContext *context,
context->glGetString (GL_RENDERER), context->glGetString (GL_RENDERER),
_cogl_context_get_gl_version (context), _cogl_context_get_gl_version (context),
all_extensions); all_extensions);
g_free (all_extensions);
} }
context->glsl_major = 1; context->glsl_major = 1;
@ -620,7 +618,6 @@ _cogl_driver_update_features (CoglContext *context,
COGL_DRIVER_ERROR, COGL_DRIVER_ERROR,
COGL_DRIVER_ERROR_INVALID_VERSION, COGL_DRIVER_ERROR_INVALID_VERSION,
"OpenGL ES 2.0 or better is required"); "OpenGL ES 2.0 or better is required");
g_strfreev (gl_extensions);
return FALSE; return FALSE;
} }
@ -636,7 +633,6 @@ _cogl_driver_update_features (CoglContext *context,
COGL_DRIVER_ERROR, COGL_DRIVER_ERROR,
COGL_DRIVER_ERROR_INVALID_VERSION, COGL_DRIVER_ERROR_INVALID_VERSION,
"GL_OES_rgb8_rgba8 is required for GLES 2"); "GL_OES_rgb8_rgba8 is required for GLES 2");
g_strfreev (gl_extensions);
return FALSE; return FALSE;
} }
@ -752,8 +748,6 @@ _cogl_driver_update_features (CoglContext *context,
for (i = 0; i < G_N_ELEMENTS (private_features); i++) for (i = 0; i < G_N_ELEMENTS (private_features); i++)
context->private_features[i] |= private_features[i]; context->private_features[i] |= private_features[i];
g_strfreev (gl_extensions);
return TRUE; return TRUE;
} }