gltexture: Try harder to determine the format
authorMatthias Clasen <mclasen@redhat.com>
Fri, 24 Mar 2023 02:56:06 +0000 (22:56 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Fri, 24 Mar 2023 02:56:06 +0000 (22:56 -0400)
We can query these things as long as the texture ID
is valid in the current context.

gdk/gdkgltexture.c

index c0ff8100aabdfbc5d09d710571067e473e14c237..85ea47b680d87e816b354cdbaab9ec5b6292e9b5 100644 (file)
@@ -317,9 +317,9 @@ gdk_gl_texture_determine_format (GdkGLTexture *self)
   GLint internal_format;
 
   /* Abort if somebody else is GL-ing here... */
-  if (self->context != gdk_gl_context_get_current () ||
+  if (!gdk_gl_context_is_shared (self->context, gdk_gl_context_get_current ()) ||
       /* ... or glGetTexLevelParameter() isn't supported */
-      !gdk_gl_context_check_version (self->context, 0, 0, 3, 1))
+      !gdk_gl_context_check_version (gdk_gl_context_get_current (), 0, 0, 3, 1))
     {
       texture->format = GDK_MEMORY_DEFAULT;
       return;