diff options
author | Uoti Urpala <uau@glyph.nonexistent.invalid> | 2010-05-31 21:34:38 +0300 |
---|---|---|
committer | Uoti Urpala <uau@glyph.nonexistent.invalid> | 2010-05-31 21:50:17 +0300 |
commit | 2fcd4cf73e1a06119e5c3284abe05942967ce3ad (patch) | |
tree | 7d0b3a79682a73b436e717d2c65745e31c9183b3 /libmpdemux/demux_mkv.c | |
parent | d75206ce68c06414455a3733e3c04405c565a696 (diff) | |
download | mpv-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.c | 4 |
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; |