ext/dv/gstdvdemux.c (gst_dvdemux_chain): Move the pad adding here from the state change handler, so we fire signals w...

Original commit message from CVS:
2005-09-05  Andy Wingo  <wingo@pobox.com>

* ext/dv/gstdvdemux.c (gst_dvdemux_chain): Move the pad adding
here from the state change handler, so we fire signals without
holding the state lock.
This commit is contained in:
Andy Wingo 2005-09-05 16:28:16 +00:00
parent bcf4791a47
commit 1c1c961af4
2 changed files with 14 additions and 2 deletions

View file

@ -1,3 +1,13 @@
2005-09-05 Andy Wingo <wingo@pobox.com>
* ext/dv/gstdvdemux.c (gst_dvdemux_chain): Move the pad adding
here from the state change handler, so we fire signals without
holding the state lock.
2005-09-02 Andy Wingo <wingo@pobox.com>
* All plugins updated for element state changes.
2005-09-01 Thomas Vander Stichele <thomas at apestaart dot org>
* Makefile.am:

View file

@ -936,6 +936,10 @@ gst_dvdemux_chain (GstPad * pad, GstBuffer * buffer)
dvdemux = GST_DVDEMUX (gst_pad_get_parent (pad));
/* temporary hack? Can't do this from the state change */
if (!dvdemux->videosrcpad)
gst_dvdemux_add_pads (dvdemux);
gst_adapter_push (dvdemux->adapter, buffer);
/* Apparently dv_parse_header can read from the body of the frame
@ -965,8 +969,6 @@ gst_dvdemux_change_state (GstElement * element, GstStateChange transition)
switch (transition) {
case GST_STATE_CHANGE_NULL_TO_READY:
if (!dvdemux->videosrcpad)
gst_dvdemux_add_pads (dvdemux);
break;
case GST_STATE_CHANGE_READY_TO_PAUSED:
dvdemux->decoder = dv_decoder_new (0, FALSE, FALSE);