summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2009-04-07 15:49:00 +0200
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2009-04-07 15:49:00 +0200
commit0fa50e9d770cf16190671d3e4c84bb174a325d12 (patch)
treee3db54ef7b7c554663046916e24549020ec0da78
parentacc912599dbf4a39e092767085a9adfca1c7b561 (diff)
downloadgst-plugins-bad-0fa50e9d770cf16190671d3e4c84bb174a325d12.tar.gz
gst-plugins-bad-0fa50e9d770cf16190671d3e4c84bb174a325d12.tar.bz2
gst-plugins-bad-0fa50e9d770cf16190671d3e4c84bb174a325d12.zip
mxfdemux: Don't use invalid buffer offsets, instead assume offset == 0
-rw-r--r--gst/mxf/mxfdemux.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gst/mxf/mxfdemux.c b/gst/mxf/mxfdemux.c
index b3af7919..6d7ca034 100644
--- a/gst/mxf/mxfdemux.c
+++ b/gst/mxf/mxfdemux.c
@@ -2844,7 +2844,8 @@ gst_mxf_demux_chain (GstPad * pad, GstBuffer * inbuf)
if (G_UNLIKELY (demux->offset == 0 && GST_BUFFER_OFFSET (inbuf) != 0)) {
GST_DEBUG_OBJECT (demux, "offset was zero, synchronizing with buffer's");
- demux->offset = GST_BUFFER_OFFSET (inbuf);
+ if (GST_BUFFER_OFFSET_IS_VALID (inbuf))
+ demux->offset = GST_BUFFER_OFFSET (inbuf);
gst_mxf_demux_set_partition_for_offset (demux, demux->offset);
} else if (demux->current_partition == NULL) {
gst_mxf_demux_set_partition_for_offset (demux, demux->offset);