matroskademux: Skip over zero-sized Xiph stream headers
authorSebastian Dröge <sebastian@centricular.com>
Mon, 30 Sep 2024 16:19:42 +0000 (19:19 +0300)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Tue, 3 Dec 2024 15:28:34 +0000 (15:28 +0000)
Thanks to Antonio Morales for finding and reporting the issue.

Fixes GHSL-2024-251
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3867

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8058>

subprojects/gst-plugins-good/gst/matroska/matroska-ids.c

index f11b7c2ce31f7e5296b93c19dc8cb96042672330..ba645f7306d94a6d95db908b68c96a9095897fe4 100644 (file)
@@ -189,8 +189,10 @@ gst_matroska_parse_xiph_stream_headers (gpointer codec_data,
     if (offset + length[i] > codec_data_size)
       goto error;
 
-    hdr = gst_buffer_new_memdup (p + offset, length[i]);
-    gst_buffer_list_add (list, hdr);
+    if (length[i] > 0) {
+      hdr = gst_buffer_new_memdup (p + offset, length[i]);
+      gst_buffer_list_add (list, hdr);
+    }
 
     offset += length[i];
   }