avcodec/dvdsub_parser: never return 0 when the input isnt 0
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 1 Aug 2014 22:27:23 +0000 (00:27 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Tue, 5 Aug 2014 02:14:02 +0000 (04:14 +0200)
Fixes a infinite loop
Fixes Ticket3804

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit cfdb30d2f1241de9354a8efdbf8252d0f1a6f933)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/dvdsub_parser.c

index e50c339..9a6457e 100644 (file)
@@ -46,7 +46,7 @@ static int dvdsub_parse(AVCodecParserContext *s,
 
     if (pc->packet_index == 0) {
         if (buf_size < 2)
-            return 0;
+            return buf_size;
         pc->packet_len = AV_RB16(buf);
         if (pc->packet_len == 0) /* HD-DVD subpicture packet */
             pc->packet_len = AV_RB32(buf+2);