diff --git a/libavcodec/aacdec_fixed.c b/libavcodec/aacdec_fixed.c
index 53a971c8d3c4f60c0b0b33c41590b8137ae878ae..950ce20f80bc63a8ab6697266c280e8020f2e392 100644
--- a/libavcodec/aacdec_fixed.c
+++ b/libavcodec/aacdec_fixed.c
@@ -370,7 +370,9 @@ static void apply_dependent_coupling_fixed(AACContext *ac,
                     shift = (gain-1024) >> 3;
                 }
 
-                if (shift < 0) {
+                if (shift < -31) {
+                    // Nothing to do
+                } else if (shift < 0) {
                     shift = -shift;
                     round = 1 << (shift - 1);