diff --git a/ext/gl/gstglimagesink.c b/ext/gl/gstglimagesink.c index 943f46e8df..07c40875a3 100644 --- a/ext/gl/gstglimagesink.c +++ b/ext/gl/gstglimagesink.c @@ -588,6 +588,11 @@ gst_glimage_sink_stop (GstBaseSink * bsink) glimage_sink->pool = NULL; } + if (glimage_sink->other_context) { + gst_object_unref (glimage_sink->other_context); + glimage_sink->other_context = NULL; + } + return TRUE; } @@ -679,6 +684,11 @@ gst_glimage_sink_change_state (GstElement * element, GstStateChange transition) glimage_sink->context = NULL; } + if (glimage_sink->other_context) { + gst_object_unref (glimage_sink->other_context); + glimage_sink->other_context = NULL; + } + if (glimage_sink->display) { gst_object_unref (glimage_sink->display); glimage_sink->display = NULL;