matroskadec: only return corrupt packets that actually contain data
authorAnton Khirnov <anton@khirnov.net>
Thu, 20 Sep 2012 18:01:43 +0000 (20:01 +0200)
committerAnton Khirnov <anton@khirnov.net>
Fri, 21 Sep 2012 07:15:01 +0000 (09:15 +0200)
Fixes bug 372.

libavformat/matroskadec.c

index 0a35a87..442db23 100644 (file)
@@ -2195,7 +2195,7 @@ static int matroska_read_packet(AVFormatContext *s, AVPacket *pkt)
         ret = matroska_parse_cluster(matroska);
     }
 
-    if (ret == AVERROR_INVALIDDATA) {
+    if (ret == AVERROR_INVALIDDATA && pkt->data) {
         pkt->flags |= AV_PKT_FLAG_CORRUPT;
         return 0;
     }