From 3b03db5e403b3c8736d00aca8071113b656995c1 Mon Sep 17 00:00:00 2001 From: Jan Schmidt Date: Fri, 28 Oct 2011 00:41:45 +1100 Subject: [PATCH] deinterlace: Don't pointlessly hold object lock over caps operations Avoids a deadlock when getcaps is recursive due to the getcaps being reflected upstream/downstream. The lock isn't actually protecting anything here. --- gst/deinterlace/gstdeinterlace.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/gst/deinterlace/gstdeinterlace.c b/gst/deinterlace/gstdeinterlace.c index 8e505a8eb8..e1210d1f7c 100644 --- a/gst/deinterlace/gstdeinterlace.c +++ b/gst/deinterlace/gstdeinterlace.c @@ -2091,8 +2091,6 @@ gst_deinterlace_getcaps (GstPad * pad) const GstCaps *ourcaps; GstCaps *peercaps; - GST_OBJECT_LOCK (self); - otherpad = (pad == self->srcpad) ? self->sinkpad : self->srcpad; ourcaps = gst_pad_get_pad_template_caps (pad); @@ -2106,8 +2104,6 @@ gst_deinterlace_getcaps (GstPad * pad) ret = gst_caps_copy (ourcaps); } - GST_OBJECT_UNLOCK (self); - for (len = gst_caps_get_size (ret); len > 0; len--) { GstStructure *s = gst_caps_get_structure (ret, len - 1);