[gtk: 1/2] GL Renderer: Ensure that GdkGLContext is current in gsk_gl_driver_shader_weak_cb




commit bcccb46b7cdfe104ae3827c863c1976f9a42df56
Author: Luca Bacci <luca bacci982 gmail com>
Date:   Sat Aug 27 10:37:14 2022 +0200

    GL Renderer: Ensure that GdkGLContext is current in gsk_gl_driver_shader_weak_cb
    
    Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/5140

 gsk/gl/gskgldriver.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
---
diff --git a/gsk/gl/gskgldriver.c b/gsk/gl/gskgldriver.c
index 179e870d80..e6674fb02f 100644
--- a/gsk/gl/gskgldriver.c
+++ b/gsk/gl/gskgldriver.c
@@ -176,7 +176,12 @@ gsk_gl_driver_shader_weak_cb (gpointer  data,
   g_assert (GSK_IS_GL_DRIVER (self));
 
   if (self->shader_cache != NULL)
-    g_hash_table_remove (self->shader_cache, where_object_was);
+    {
+      if (self->command_queue != NULL)
+        gsk_gl_command_queue_make_current (self->command_queue);
+
+      g_hash_table_remove (self->shader_cache, where_object_was);
+    }
 }
 
 G_GNUC_NULL_TERMINATED static inline GBytes *


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]