summaryrefslogtreecommitdiff
path: root/libavcodec/dvdsub_parser.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-08-02 00:27:23 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-08-02 00:27:23 +0200
commitcfdb30d2f1241de9354a8efdbf8252d0f1a6f933 (patch)
tree4ba2cd4b072a0bb715f64c0414ad520a97adef58 /libavcodec/dvdsub_parser.c
parentafd62b3f184569492230e7f34ad55581c6b2d2c3 (diff)
downloadffmpeg-cfdb30d2f1241de9354a8efdbf8252d0f1a6f933.tar.gz
avcodec/dvdsub_parser: never return 0 when the input isnt 0
Fixes a infinite loop Fixes Ticket3804 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/dvdsub_parser.c')
-rw-r--r--libavcodec/dvdsub_parser.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/dvdsub_parser.c b/libavcodec/dvdsub_parser.c
index e50c3396e4..9a6457e8b4 100644
--- a/libavcodec/dvdsub_parser.c
+++ b/libavcodec/dvdsub_parser.c
@@ -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);