Original commit message from CVS:
* gst/gstpad.c: (gst_pad_peer_accept_caps):
Release pad lock before calling out to avoid a possible deadlock.
2008-05-14 Wim Taymans <wim.taymans@collabora.co.uk>
+ * gst/gstpad.c: (gst_pad_peer_accept_caps):
+ Release pad lock before calling out to avoid a possible deadlock.
+
+2008-05-14 Wim Taymans <wim.taymans@collabora.co.uk>
+
* gst/parse/grammar.y:
Remove unneeded value unset.
if (G_UNLIKELY (peerpad == NULL))
goto no_peer;
- result = gst_pad_accept_caps (peerpad, caps);
+ gst_object_ref (peerpad);
+ /* release lock before calling external methods but keep ref to pad */
GST_OBJECT_UNLOCK (pad);
+ result = gst_pad_accept_caps (peerpad, caps);
+
+ gst_object_unref (peerpad);
+
return result;
no_peer: