From f1392c148ecda25373298e13398cd966b03651e3 Mon Sep 17 00:00:00 2001 From: Young-Ho Cha Date: Fri, 16 Jun 2006 13:59:29 +0000 Subject: [PATCH] gst-libs/gst/riff/riff-read.c: Parse extra data better, apparently it's right behind the normal strf header size. Fix... Original commit message from CVS: Patch by: Young-Ho Cha * gst-libs/gst/riff/riff-read.c: (gst_riff_parse_strf_vids): Parse extra data better, apparently it's right behind the normal strf header size. Fixes #343500. --- ChangeLog | 8 ++++++++ gst-libs/gst/riff/riff-read.c | 7 ++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 45dfe3ca46..a0b5522458 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2006-06-16 Wim Taymans + + Patch by: Young-Ho Cha + + * gst-libs/gst/riff/riff-read.c: (gst_riff_parse_strf_vids): + Parse extra data better, apparently it's right behind + the normal strf header size. Fixes #343500. + 2006-06-16 Wim Taymans * ext/alsa/gstalsasink.c: (set_hwparams): diff --git a/gst-libs/gst/riff/riff-read.c b/gst-libs/gst/riff/riff-read.c index 18d9de4cb2..6930d43e07 100644 --- a/gst-libs/gst/riff/riff-read.c +++ b/gst-libs/gst/riff/riff-read.c @@ -340,9 +340,10 @@ gst_riff_parse_strf_vids (GstElement * element, "strf_vids header gave %d bytes data, only %d available", strf->size, GST_BUFFER_SIZE (buf)); strf->size = GST_BUFFER_SIZE (buf); - } else if (strf->size < GST_BUFFER_SIZE (buf)) { - *data = gst_buffer_create_sub (buf, strf->size, - GST_BUFFER_SIZE (buf) - strf->size); + } + if (sizeof (gst_riff_strf_vids) < GST_BUFFER_SIZE (buf)) { + *data = gst_buffer_create_sub (buf, sizeof (gst_riff_strf_vids), + GST_BUFFER_SIZE (buf) - sizeof (gst_riff_strf_vids)); } /* debug */