Skip to content
Snippets Groups Projects
Commit b0033875 authored by Matthew Waters's avatar Matthew Waters :koala: Committed by GStreamer Marge Bot
Browse files

wpesrc: fix some caps leaks using the non-GL output

Always chain up to the parent _stop() implementation as it unrefs some
caps (among other things).

Fixes: gstreamer/gst-plugins-bad#1409
Part-of: <gstreamer/gst-plugins-bad!1618>
parent f7a8ece5
No related branches found
No related tags found
No related merge requests found
Pipeline #207776 passed
......@@ -330,15 +330,20 @@ gst_wpe_src_stop (GstBaseSrc * base_src)
{
GstWpeSrc *src = GST_WPE_SRC (base_src);
/* we can call this always, GstGLBaseSrc is smart enough to not crash if
* gst_gl_base_src_gl_start() has not been called from chaining up
* gst_wpe_src_decide_allocation() */
if (!GST_CALL_PARENT_WITH_DEFAULT(GST_BASE_SRC_CLASS, stop, (base_src), FALSE))
return FALSE;
GST_OBJECT_LOCK (src);
if (src->gl_enabled) {
GST_OBJECT_UNLOCK (src);
// Let glbasesrc call our gl_stop() within its GL context.
return GST_CALL_PARENT_WITH_DEFAULT(GST_BASE_SRC_CLASS, stop, (base_src), FALSE);
}
/* if gl-enabled, gst_wpe_src_stop_unlocked() would have already been called
* inside gst_wpe_src_gl_stop() from the base class stopping the OpenGL
* context */
if (!src->gl_enabled)
gst_wpe_src_stop_unlocked (src);
gst_wpe_src_stop_unlocked (src);
GST_OBJECT_UNLOCK (src);
return TRUE;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment