From a41bad561aaf1109d7eb9802cceb490dde18666a Mon Sep 17 00:00:00 2001 From: Matthew Waters Date: Tue, 12 Nov 2019 12:17:44 +1100 Subject: [PATCH] gl/window: marshall quit to the window thread Fixes a possible deadlock where we're waiting for the window thread to quit but it never does. --- gst-libs/gst/gl/gstglwindow.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gst-libs/gst/gl/gstglwindow.c b/gst-libs/gst/gl/gstglwindow.c index f51c7fbbb2..da7f498dee 100644 --- a/gst-libs/gst/gl/gstglwindow.c +++ b/gst-libs/gst/gl/gstglwindow.c @@ -539,12 +539,20 @@ gst_gl_window_run (GstGLWindow * window) } static void -gst_gl_window_default_quit (GstGLWindow * window) +window_default_quit_func (GstGLWindow * window) { gst_gl_display_remove_window (window->display, window); g_main_loop_quit (window->priv->loop); } +static void +gst_gl_window_default_quit (GstGLWindow * window) +{ + gst_gl_window_send_message_async (window, + (GstGLWindowCB) window_default_quit_func, gst_object_ref (window), + gst_object_unref); +} + /** * gst_gl_window_quit: * @window: a #GstGLWindow