collectpads: Don't unref NULL GstCollectData

If a pad is removed while a collectpads element (say adder) is in a chain
function waiting to be collected, there is a possibility that an unref happens
on a NULL pointer.

https://bugzilla.gnome.org/show_bug.cgi?id=707536
This commit is contained in:
Zaheer Abbas Merali 2013-09-05 14:14:42 +02:00 committed by Sebastian Dröge
parent 1125b9a924
commit 4e880d4d1e

View file

@ -2058,7 +2058,9 @@ gst_collect_pads_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer)
unlock_done:
GST_COLLECT_PADS_STREAM_UNLOCK (pads);
unref_data (data);
/* data is definitely NULL if pad_removed goto was run. */
if (data)
unref_data (data);
if (buffer)
gst_buffer_unref (buffer);
return ret;