summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThiago Santos <thiago.sousa.santos@collabora.co.uk>2010-01-12 09:35:24 -0300
committerThiago Santos <thiago.sousa.santos@collabora.co.uk>2010-01-12 09:37:34 -0300
commitddeb6e17fda2184b39353ef1472845654eab3339 (patch)
treec7108943e2aca003468574699d7544838a991602
parentb3f0b029f3c3382cf7d63c22f144e3204c68b182 (diff)
mpegtsmux: Do not crash on misinterpreted h264
Avoid crashing when bytestream h264 is interpreted as avc format h264 Fixes #606657
-rw-r--r--gst/mpegtsmux/mpegtsmux_h264.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gst/mpegtsmux/mpegtsmux_h264.c b/gst/mpegtsmux/mpegtsmux_h264.c
index 5824f3584..f43bc0955 100644
--- a/gst/mpegtsmux/mpegtsmux_h264.c
+++ b/gst/mpegtsmux/mpegtsmux_h264.c
@@ -191,6 +191,12 @@ mpegtsmux_prepare_h264 (GstBuffer * buf, MpegTsPadData * data, MpegTsMux * mux)
out_offset += nal_size;
}
+ if (out_offset > GST_BUFFER_SIZE (out_buf)) {
+ GST_WARNING_OBJECT (mux, "Calculated buffer size %u is greater than max "
+ "expected size %u, using max expected size (Input might not be in "
+ "avc format", out_buf, GST_BUFFER_SIZE (out_buf));
+ out_offset = GST_BUFFER_SIZE (out_buf);
+ }
GST_BUFFER_SIZE (out_buf) = out_offset;
return out_buf;