diff --git a/ChangeLog b/ChangeLog index ceda4c90ec..f320c79222 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2004-05-09 Benjamin Otte + + * gst/wavparse/gstwavparse.c: (gst_wavparse_destroy_sourcepad), + (gst_wavparse_create_sourcepad): + make PAUSED=>READY=>PAUSED=READY work by not destroying NULL + sourcepads + 2004-05-09 Benjamin Otte * ext/alsa/gstalsasink.c: (gst_alsa_sink_check_event): diff --git a/gst/wavparse/gstwavparse.c b/gst/wavparse/gstwavparse.c index 0e90130cb2..5d185aa5bf 100644 --- a/gst/wavparse/gstwavparse.c +++ b/gst/wavparse/gstwavparse.c @@ -215,15 +215,16 @@ gst_wavparse_init (GstWavParse * wavparse) static void gst_wavparse_destroy_sourcepad (GstWavParse * wavparse) { - gst_element_remove_pad (GST_ELEMENT (wavparse), wavparse->srcpad); - wavparse->srcpad = NULL; + if (wavparse->srcpad) { + gst_element_remove_pad (GST_ELEMENT (wavparse), wavparse->srcpad); + wavparse->srcpad = NULL; + } } static void gst_wavparse_create_sourcepad (GstWavParse * wavparse) { - if (wavparse->srcpad) - gst_wavparse_destroy_sourcepad (wavparse); + gst_wavparse_destroy_sourcepad (wavparse); /* source */ wavparse->srcpad =