summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2016-04-14 15:10:31 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2016-04-28 03:47:13 +0200
commit62e87d065b9bae0f9d5319a88c8af0a0c3bdd084 (patch)
tree0dded2f46f406896382f3fe3dfb30a5e3a1ab53f
parent3d9f1c0dbbcba0164ec5f0bd3497c481afc43062 (diff)
downloadffmpeg-62e87d065b9bae0f9d5319a88c8af0a0c3bdd084.tar.gz
avcodec/bmp_parser: Ensure remaining_size is not too small in startcode packet crossing corner case
Fixes Ticket 5438 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 8e26bdd59bf559d00c7e60c53fff292de10139ff) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/bmp_parser.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/bmp_parser.c b/libavcodec/bmp_parser.c
index c9493dc32d..7ab32a0b00 100644
--- a/libavcodec/bmp_parser.c
+++ b/libavcodec/bmp_parser.c
@@ -63,7 +63,7 @@ restart:
continue;
}
bpc->pc.frame_start_found++;
- bpc->remaining_size = bpc->fsize + i - 17;
+ bpc->remaining_size = bpc->fsize + FFMAX(i - 17, 0);
if (bpc->pc.index + i > 17) {
next = i - 17;