summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/gtk/gstgtkbasesink.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/ext/gtk/gstgtkbasesink.c b/ext/gtk/gstgtkbasesink.c
index 57c5a060a..e11627b5b 100644
--- a/ext/gtk/gstgtkbasesink.c
+++ b/ext/gtk/gstgtkbasesink.c
@@ -342,8 +342,13 @@ gst_gtk_base_sink_stop_on_main (GstBaseSink * bsink)
static gboolean
gst_gtk_base_sink_stop (GstBaseSink * bsink)
{
- return ! !gst_gtk_invoke_on_main ((GThreadFunc)
- gst_gtk_base_sink_stop_on_main, bsink);
+ GstGtkBaseSink *gst_sink = GST_GTK_BASE_SINK (bsink);
+
+ if (gst_sink->window)
+ return ! !gst_gtk_invoke_on_main ((GThreadFunc)
+ gst_gtk_base_sink_stop_on_main, bsink);
+
+ return TRUE;
}
static void