gl: Install the debug message callback for gl-debug

Always install the debug message callback when we can
and GDK_DEBUG=gl-debug is specified. Previously, we
were only installing the callback when the build was
a non-optimized debug build.
This commit is contained in:
Matthias Clasen 2020-10-05 14:08:55 -04:00
parent aaab461c27
commit 7311464c67

View File

@ -864,7 +864,7 @@ gdk_gl_context_get_use_es (GdkGLContext *context)
return priv->use_es > 0; return priv->use_es > 0;
} }
#ifdef G_ENABLE_CONSISTENCY_CHECKS #ifdef G_ENABLE_DEBUG
static void static void
gl_debug_message_callback (GLenum source, gl_debug_message_callback (GLenum source,
GLenum type, GLenum type,
@ -1008,8 +1008,11 @@ gdk_gl_context_check_extensions (GdkGLContext *context)
priv->has_debug_output = epoxy_has_gl_extension ("GL_ARB_debug_output") || priv->has_debug_output = epoxy_has_gl_extension ("GL_ARB_debug_output") ||
epoxy_has_gl_extension ("GL_KHR_debug"); epoxy_has_gl_extension ("GL_KHR_debug");
#ifdef G_ENABLE_CONSISTENCY_CHECKS #ifdef G_ENABLE_DEBUG
if (priv->has_debug_output) display = gdk_draw_context_get_display (GDK_DRAW_CONTEXT (context));
gl_debug = GDK_DISPLAY_DEBUG_CHECK (display, GL_DEBUG);
if (priv->has_debug_output && gl_debug)
{ {
gdk_gl_context_make_current (context); gdk_gl_context_make_current (context);
glEnable (GL_DEBUG_OUTPUT); glEnable (GL_DEBUG_OUTPUT);
@ -1039,11 +1042,6 @@ gdk_gl_context_check_extensions (GdkGLContext *context)
priv->is_legacy = TRUE; priv->is_legacy = TRUE;
} }
#ifdef G_ENABLE_DEBUG
display = gdk_draw_context_get_display (GDK_DRAW_CONTEXT (context));
gl_debug = GDK_DISPLAY_DEBUG_CHECK (display, GL_DEBUG);
#endif
if (priv->has_khr_debug && gl_debug) if (priv->has_khr_debug && gl_debug)
{ {
priv->use_khr_debug = TRUE; priv->use_khr_debug = TRUE;