summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_mkv.c
diff options
context:
space:
mode:
authorUoti Urpala <uau@glyph.nonexistent.invalid>2010-05-31 21:34:38 +0300
committerUoti Urpala <uau@glyph.nonexistent.invalid>2010-05-31 21:50:17 +0300
commit2fcd4cf73e1a06119e5c3284abe05942967ce3ad (patch)
tree7d0b3a79682a73b436e717d2c65745e31c9183b3 /libmpdemux/demux_mkv.c
parentd75206ce68c06414455a3733e3c04405c565a696 (diff)
downloadmpv-2fcd4cf73e1a06119e5c3284abe05942967ce3ad.tar.bz2
mpv-2fcd4cf73e1a06119e5c3284abe05942967ce3ad.tar.xz
demux_mkv: fix possible seek crash
Commit fc39d48465 ("demux_mkv: store streams sequentially in demuxer->[avs]_streams") had a copy-paste error causing it to look up a video ID where it should have been an audio one. The most likely visible symptom was a segfault when seeking while playing a high-numbered audio track. Looks like I was careless with that original commit, second bug in the same one...
Diffstat (limited to 'libmpdemux/demux_mkv.c')
-rw-r--r--libmpdemux/demux_mkv.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libmpdemux/demux_mkv.c b/libmpdemux/demux_mkv.c
index 36d198d2bb..f331960b80 100644
--- a/libmpdemux/demux_mkv.c
+++ b/libmpdemux/demux_mkv.c
@@ -2413,11 +2413,11 @@ static void demux_mkv_seek(demuxer_t *demuxer, float rel_seek_secs,
uint64_t v_tnum = -1;
if (demuxer->video->id >= 0)
v_tnum = find_track_by_num(mkv_d, demuxer->video->id,
- MATROSKA_TRACK_VIDEO)->tnum;
+ MATROSKA_TRACK_VIDEO)->tnum;
uint64_t a_tnum = -1;
if (demuxer->audio->id >= 0)
a_tnum = find_track_by_num(mkv_d, demuxer->audio->id,
- MATROSKA_TRACK_VIDEO)->tnum;
+ MATROSKA_TRACK_AUDIO)->tnum;
if (!(flags & (SEEK_BACKWARD | SEEK_FORWARD))) {
if (flags & SEEK_ABSOLUTE || rel_seek_secs < 0)
flags |= SEEK_BACKWARD;