summaryrefslogtreecommitdiff
path: root/gst-libs
diff options
context:
space:
mode:
authorMatej Knopp <matej.knopp@gmail.com>2012-04-14 21:09:25 +0200
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2012-04-16 08:42:12 +0200
commit045e8bb506f24321bcd20933ceab8588e225ec3c (patch)
tree298cc191a5e64b1bceb05f34f27ac36dab1306d6 /gst-libs
parent19f7bd470d9ec602d706c268713384404888cd3a (diff)
downloadgstreamer-plugins-bad-045e8bb506f24321bcd20933ceab8588e225ec3c.tar.gz
mpegvideoparse: Do not ignore start code at the end of buffer
Diffstat (limited to 'gst-libs')
-rw-r--r--gst-libs/gst/codecparsers/gstmpegvideoparser.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/gst-libs/gst/codecparsers/gstmpegvideoparser.c b/gst-libs/gst/codecparsers/gstmpegvideoparser.c
index b45156a8d..ec8c934bb 100644
--- a/gst-libs/gst/codecparsers/gstmpegvideoparser.c
+++ b/gst-libs/gst/codecparsers/gstmpegvideoparser.c
@@ -334,13 +334,13 @@ gst_mpeg_video_parse (const guint8 * data, gsize size, guint offset)
codoffsize->offset = gst_byte_reader_get_pos (&br) + offset;
rsize = gst_byte_reader_get_remaining (&br);
- if (rsize <= 0) {
- g_free (codoffsize);
- break;
+ if (rsize == 0) {
+ /* if there are no more bytes after the start code set the size to -1 */
+ off = -1;
+ } else {
+ off = scan_for_start_codes (&br, 0, rsize);
}
- off = scan_for_start_codes (&br, 0, rsize);
-
codoffsize->size = off;
ret = g_list_prepend (ret, codoffsize);