Skip to content

Commit

Permalink
matroskadec: check that pointers were initialized before accessing them
Browse files Browse the repository at this point in the history
fix ticket #14

Signed-off-by: Aurelien Jacobs <aurel@gnuage.org>
  • Loading branch information
aurelj committed Mar 23, 2011
1 parent 2a0d4d4 commit 2851b1f
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions libavformat/matroskadec.c
Expand Up @@ -1085,19 +1085,21 @@ static void matroska_convert_tags(AVFormatContext *s)
if (tags[i].target.attachuid) {
MatroskaAttachement *attachment = matroska->attachments.elem;
for (j=0; j<matroska->attachments.nb_elem; j++)
if (attachment[j].uid == tags[i].target.attachuid)
if (attachment[j].uid == tags[i].target.attachuid
&& attachment[j].stream)
matroska_convert_tag(s, &tags[i].tag,
&attachment[j].stream->metadata, NULL);
} else if (tags[i].target.chapteruid) {
MatroskaChapter *chapter = matroska->chapters.elem;
for (j=0; j<matroska->chapters.nb_elem; j++)
if (chapter[j].uid == tags[i].target.chapteruid)
if (chapter[j].uid == tags[i].target.chapteruid
&& chapter[j].chapter)
matroska_convert_tag(s, &tags[i].tag,
&chapter[j].chapter->metadata, NULL);
} else if (tags[i].target.trackuid) {
MatroskaTrack *track = matroska->tracks.elem;
for (j=0; j<matroska->tracks.nb_elem; j++)
if (track[j].uid == tags[i].target.trackuid)
if (track[j].uid == tags[i].target.trackuid && track[j].stream)
matroska_convert_tag(s, &tags[i].tag,
&track[j].stream->metadata, NULL);
} else {
Expand Down

0 comments on commit 2851b1f

Please sign in to comment.