From: Sebastian Dröge Date: Wed, 5 May 2010 17:35:48 +0000 (+0200) Subject: videomixer: Make selection of a sinkpad number threadsafe X-Git-Tag: RELEASE-0.10.23~131 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=85c6b9b712c35632523e8301f6f0ed4893619001;p=platform%2Fupstream%2Fgst-plugins-good.git videomixer: Make selection of a sinkpad number threadsafe --- diff --git a/gst/videomixer/videomixer.c b/gst/videomixer/videomixer.c index c77604e..3c94c63 100644 --- a/gst/videomixer/videomixer.c +++ b/gst/videomixer/videomixer.c @@ -1101,7 +1101,9 @@ gst_videomixer_request_new_pad (GstElement * element, gchar *name = NULL; GstVideoMixerCollect *mixcol = NULL; - if (req_name == NULL || strlen (req_name) < 6) { + GST_VIDEO_MIXER_STATE_LOCK (mix); + if (req_name == NULL || strlen (req_name) < 6 + || !g_str_has_prefix (req_name, "sink_")) { /* no name given when requesting the pad, use next available int */ serial = mix->next_sinkpad++; } else { @@ -1116,7 +1118,6 @@ gst_videomixer_request_new_pad (GstElement * element, templ->direction, "template", templ, NULL); g_free (name); - GST_VIDEO_MIXER_STATE_LOCK (mix); mixpad->zorder = mix->numpads; mixpad->xpos = DEFAULT_PAD_XPOS; mixpad->ypos = DEFAULT_PAD_YPOS;