From edd80ec7e32b097043432fa67281ed8c6d044331 Mon Sep 17 00:00:00 2001 From: Mans Rullgard Date: Sat, 24 Nov 2012 13:12:47 +0000 Subject: aacdec: fix signed overflows in lcg_random() Signed-off-by: Mans Rullgard --- libavcodec/aacdec.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'libavcodec/aacdec.c') diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c index d2a31cae0b..af17acfb75 100644 --- a/libavcodec/aacdec.c +++ b/libavcodec/aacdec.c @@ -787,7 +787,8 @@ static int decode_audio_specific_config(AACContext *ac, */ static av_always_inline int lcg_random(int previous_val) { - return previous_val * 1664525 + 1013904223; + union { unsigned u; int s; } v = { previous_val * 1664525u + 1013904223 }; + return v.s; } static av_always_inline void reset_predict_state(PredictorState *ps) -- cgit v1.2.3