gst/asfdemux/gstasfdemux.c: Prevent infinite loops. More correct error reporting.
authorRonald S. Bultje <rbultje@ronald.bitfreak.net>
Wed, 22 Sep 2004 07:55:37 +0000 (07:55 +0000)
committerRonald S. Bultje <rbultje@ronald.bitfreak.net>
Wed, 22 Sep 2004 07:55:37 +0000 (07:55 +0000)
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c: (_read_var_length), (_read_guid),
(gst_asf_demux_process_segment), (gst_asf_demux_handle_data),
(gst_asf_demux_process_chunk), (gst_asf_demux_handle_sink_event):
Prevent infinite loops. More correct error reporting.
* gst/auparse/gstauparse.c: (gst_auparse_chain):
Error out if negotiation fails.
* gst/playback/gstplaybasebin.c: (setup_source),
(gst_play_base_bin_change_state), (gst_play_base_bin_error),
(gst_play_base_bin_found_tag):
Error/tag forwarding. Pre-roll fixes for source errors on state
changes (e.g. "file does not exist") to prevent hangs.

ChangeLog
gst/auparse/gstauparse.c

index e80b4db..bb04986 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2004-09-22  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
+
+       * gst/asfdemux/gstasfdemux.c: (_read_var_length), (_read_guid),
+       (gst_asf_demux_process_segment), (gst_asf_demux_handle_data),
+       (gst_asf_demux_process_chunk), (gst_asf_demux_handle_sink_event):
+         Prevent infinite loops. More correct error reporting.
+       * gst/auparse/gstauparse.c: (gst_auparse_chain):
+         Error out if negotiation fails.
+       * gst/playback/gstplaybasebin.c: (setup_source),
+       (gst_play_base_bin_change_state), (gst_play_base_bin_error),
+       (gst_play_base_bin_found_tag):
+         Error/tag forwarding. Pre-roll fixes for source errors on state
+         changes (e.g. "file does not exist") to prevent hangs.
+
 2004-09-21  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
 
        * testsuite/multifilesink/Makefile.am:
index 944e0bd..a9a764f 100644 (file)
@@ -340,6 +340,7 @@ Samples :
     }
 
     if (!gst_pad_set_explicit_caps (auparse->srcpad, tempcaps)) {
+      GST_ELEMENT_ERROR (auparse, CORE, NEGOTIATION, (NULL), (NULL));
       gst_buffer_unref (buf);
       gst_object_unref (GST_OBJECT (auparse->srcpad));
       auparse->srcpad = NULL;