OSDN Git Service

Prevent au_read_packet() looping endlessly when .au file contains unsupported codec...
authorPeter Ross <pross@xvid.org>
Mon, 31 May 2010 10:47:36 +0000 (10:47 +0000)
committerPeter Ross <pross@xvid.org>
Mon, 31 May 2010 10:47:36 +0000 (10:47 +0000)
Originally committed as revision 23392 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/au.c

index f8f718d..a9c7d03 100644 (file)
@@ -139,6 +139,11 @@ static int au_read_header(AVFormatContext *s,
 
     codec = ff_codec_get_id(codec_au_tags, id);
 
+    if (!av_get_bits_per_sample(codec)) {
+        av_log_ask_for_sample(s, "could not determine bits per sample\n");
+        return AVERROR_INVALIDDATA;
+    }
+
     if (size >= 24) {
         /* skip unused data */
         url_fseek(pb, size - 24, SEEK_CUR);