playsink: unblock pads before releasing
authorWim Taymans <wim.taymans@collabora.co.uk>
Tue, 4 Sep 2012 08:03:25 +0000 (10:03 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Tue, 4 Sep 2012 08:06:01 +0000 (10:06 +0200)
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679823

gst/playback/gstplaysink.c

index 1518720..4d09a4e 100644 (file)
@@ -4173,12 +4173,15 @@ gst_play_sink_release_pad (GstPlaySink * playsink, GstPad * pad)
     res = &playsink->video_pad;
     g_signal_handlers_disconnect_by_func (playsink->video_pad, caps_notify_cb,
         playsink);
+    video_set_blocked (playsink, FALSE);
   } else if (pad == playsink->audio_pad) {
     res = &playsink->audio_pad;
     g_signal_handlers_disconnect_by_func (playsink->audio_pad, caps_notify_cb,
         playsink);
+    audio_set_blocked (playsink, FALSE);
   } else if (pad == playsink->text_pad) {
     res = &playsink->text_pad;
+    text_set_blocked (playsink, FALSE);
   } else {
     /* try to release the given pad anyway, these could be the FLUSHING pads. */
     res = &pad;