+2006-07-27 Wim Taymans <wim@fluendo.com>
+
+ patch by: Kai Vehmanen <kv2004 eca cx>
+
+ * gst-libs/gst/rtp/gstbasertpdepayload.c:
+ (gst_base_rtp_depayload_chain),
+ (gst_base_rtp_depayload_handle_sink_event),
+ (gst_base_rtp_depayload_change_state):
+ Don't send multiple newsegments with different formats.
+ Fixes #348677.
+
2006-07-26 Wim Taymans <wim@fluendo.com>
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_internal_chain),
gst_event_unref (event);
break;
} else {
+ GstFormat format;
+
+ gst_event_parse_new_segment (event, NULL, NULL, &format, NULL, NULL,
+ NULL);
+ if (format != GST_FORMAT_TIME)
+ goto wrong_format;
+
GST_DEBUG_OBJECT (filter,
"Upstream sent a NEWSEGMENT, passing through.");
}
- }
/* note: pass through to default if no thread running */
+ }
default:
/* pass other events forward */
res = gst_pad_push_event (filter->srcpad, event);
break;
}
-
return res;
+
+ /* ERRORS */
+wrong_format:
+ {
+ GST_DEBUG_OBJECT (filter,
+ "Upstream sent a NEWSEGMENT in wrong format, dropping.");
+ gst_event_unref (event);
+ return TRUE;
+ }
}
static GstFlowReturn