On 2018-03-09 02:37, Michael Niedermayer wrote:
Fixes: signed integer overflow: 3775922176 * 4278190080 cannot be represented 
in type 'long'
Fixes: Chromium bug 791237

Reported-by: Matt Wolenetz <wolen...@google.com>
Reviewed-by: Matt Wolenetz <wolen...@google.com>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
---
  libavformat/avidec.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/avidec.c b/libavformat/avidec.c
index 3ff515d492..bafe1dc8da 100644
--- a/libavformat/avidec.c
+++ b/libavformat/avidec.c
@@ -670,7 +670,7 @@ FF_ENABLE_DEPRECATION_WARNINGS
              st->start_time = 0;
              avio_rl32(pb); /* buffer size */
              avio_rl32(pb); /* quality */
-            if (ast->cum_len*ast->scale/ast->rate > 3600) {
+            if (ast->cum_len > 3600LL * ast->rate / ast->scale) {
                  av_log(s, AV_LOG_ERROR, "crazy start time, iam scared, giving 
up\n");
                  ast->cum_len = 0;
              }

Isn't there an AVRational compare function for stuff like this?

/Tomas
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to