summaryrefslogtreecommitdiffstats
path: root/demux/demux_mkv.c
diff options
context:
space:
mode:
Diffstat (limited to 'demux/demux_mkv.c')
-rw-r--r--demux/demux_mkv.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/demux/demux_mkv.c b/demux/demux_mkv.c
index 100447d1f7..36ca0277ba 100644
--- a/demux/demux_mkv.c
+++ b/demux/demux_mkv.c
@@ -1757,6 +1757,13 @@ static int demux_mkv_open(demuxer_t *demuxer, enum demux_check check)
int64_t start_pos;
int64_t end_pos;
+ bstr start = stream_peek(s, 4);
+ uint32_t start_id;
+ for (int n = 0; n < start.len; n++)
+ start_id = (start_id << 8) | start.start[n];
+ if (start_id != EBML_ID_EBML)
+ return -1;
+
if (!read_ebml_header(demuxer))
return -1;
MP_VERBOSE(demuxer, "Found the head...\n");