diff options
author | Anton Khirnov <anton@khirnov.net> | 2013-12-12 07:34:13 +0100 |
---|---|---|
committer | Reinhard Tartler <siretart@tauware.de> | 2014-02-02 12:48:45 -0500 |
commit | e03b875c0b57d458d3fc693b37b01615fc7283e7 (patch) | |
tree | c01be3ccf4e9ed8785fd22b5795a919043521b7b | |
parent | 30c8a5e4f6c096eabb82c45177b945ebc85144fb (diff) | |
download | ffmpeg-e03b875c0b57d458d3fc693b37b01615fc7283e7.tar.gz |
mathematics: remove asserts from av_rescale_rnd()
It is a public function, it must not assert on its parameters.
(cherry picked from commit 94a417acc05cc5151b473abc0bf51fad26f8c5a0)
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
(cherry picked from commit 03bfd8419fbaf9c72b293457437bd508dea64736)
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
-rw-r--r-- | libavutil/mathematics.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/libavutil/mathematics.c b/libavutil/mathematics.c index e6ce2f98ad..51b0e95133 100644 --- a/libavutil/mathematics.c +++ b/libavutil/mathematics.c @@ -23,7 +23,6 @@ * miscellaneous math routines and tables */ -#include <assert.h> #include <stdint.h> #include <limits.h> #include "mathematics.h" @@ -76,9 +75,9 @@ int64_t av_gcd(int64_t a, int64_t b){ int64_t av_rescale_rnd(int64_t a, int64_t b, int64_t c, enum AVRounding rnd){ int64_t r=0; - assert(c > 0); - assert(b >=0); - assert((unsigned)rnd<=5 && rnd!=4); + + if (c <= 0 || b < 0 || rnd == 4 || rnd > 5) + return INT64_MIN; if(a<0 && a != INT64_MIN) return -av_rescale_rnd(-a, b, c, rnd ^ ((rnd>>1)&1)); |