[gtk/wip/baedert/for-master: 1/2] glcontext-wayland: Only allocate configs we use
- From: Timm Bäder <baedert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wip/baedert/for-master: 1/2] glcontext-wayland: Only allocate configs we use
- Date: Thu, 24 Dec 2020 08:41:22 +0000 (UTC)
commit b14270c3f793990ad247174738f676c0207d9635
Author: Timm Bäder <mail baedert org>
Date: Thu Dec 24 09:09:35 2020 +0100
glcontext-wayland: Only allocate configs we use
We only use the first one, so don't allocate space for more than that.
gdk/wayland/gdkglcontext-wayland.c | 24 +++++-------------------
1 file changed, 5 insertions(+), 19 deletions(-)
---
diff --git a/gdk/wayland/gdkglcontext-wayland.c b/gdk/wayland/gdkglcontext-wayland.c
index 726ca25f10..c4bf5fcf05 100644
--- a/gdk/wayland/gdkglcontext-wayland.c
+++ b/gdk/wayland/gdkglcontext-wayland.c
@@ -387,7 +387,7 @@ find_eglconfig_for_surface (GdkSurface *surface,
EGLint attrs[MAX_EGL_ATTRS];
EGLBoolean result;
EGLint count;
- EGLConfig *configs;
+ EGLConfig config;
int i = 0;
attrs[i++] = EGL_SURFACE_TYPE;
@@ -408,18 +408,8 @@ find_eglconfig_for_surface (GdkSurface *surface,
attrs[i++] = EGL_NONE;
g_assert (i < MAX_EGL_ATTRS);
- result = eglChooseConfig (display_wayland->egl_display, attrs, NULL, 0, &count);
- if (!result || count < 1)
- {
- g_set_error_literal (error, GDK_GL_ERROR,
- GDK_GL_ERROR_UNSUPPORTED_FORMAT,
- _("No available configurations for the given pixel format"));
- return FALSE;
- }
-
- configs = g_new (EGLConfig, count);
-
- result = eglChooseConfig (display_wayland->egl_display, attrs, configs, count, &count);
+ /* Pick first valid configuration i guess? */
+ result = eglChooseConfig (display_wayland->egl_display, attrs, &config, 1, &count);
if (!result || count < 1)
{
g_set_error_literal (error, GDK_GL_ERROR,
@@ -428,12 +418,8 @@ find_eglconfig_for_surface (GdkSurface *surface,
return FALSE;
}
- /* Pick first valid configuration i guess? */
-
- if (egl_config_out != NULL)
- *egl_config_out = configs[0];
-
- g_free (configs);
+ g_assert (egl_config_out);
+ *egl_config_out = config;
return TRUE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]