From 476078aed29bd258bf4e01b9b2a78bafb9840a41 Mon Sep 17 00:00:00 2001 From: eugeni Date: Tue, 1 May 2007 23:04:21 +0000 Subject: Fix NULL pointer dereference in demux_mkv that happens when demux_mkv_get_sub_lang (or demux_mkv_get_audio_lang) is called with an invalid track number. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23205 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpdemux/demux_mkv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libmpdemux') diff --git a/libmpdemux/demux_mkv.c b/libmpdemux/demux_mkv.c index 3bdedb4eb6..1e5c84f520 100644 --- a/libmpdemux/demux_mkv.c +++ b/libmpdemux/demux_mkv.c @@ -3738,7 +3738,7 @@ demux_mkv_get_sub_lang(demuxer_t *demuxer, int track_num, char *lang, { mkv_demuxer_t *mkv_d = (mkv_demuxer_t *) demuxer->priv; mkv_track_t *track = demux_mkv_find_track_by_num (mkv_d, track_num, MATROSKA_TRACK_SUBTITLE); - if (track->language && strcmp(track->language, "und")) + if (track && track->language && strcmp(track->language, "und")) strlcpy(lang, track->language, maxlen); } @@ -3758,7 +3758,7 @@ demux_mkv_get_audio_lang(demuxer_t *demuxer, int track_num, char *lang, { mkv_demuxer_t *mkv_d = (mkv_demuxer_t *) demuxer->priv; mkv_track_t *track = demux_mkv_find_track_by_num (mkv_d, track_num, MATROSKA_TRACK_AUDIO); - if (track->language && strcmp(track->language, "und")) + if (track && track->language && strcmp(track->language, "und")) strlcpy(lang, track->language, maxlen); } -- cgit v1.2.3