diff --git a/libavcodec/g726.c b/libavcodec/g726.c index 88f7cee38041ad9c8c6a21cb9f8393d23625769d..6086e389aaaa2433c5aa9b7a0e41c455fcce7769 100644 --- a/libavcodec/g726.c +++ b/libavcodec/g726.c @@ -52,8 +52,8 @@ static inline int16_t mult(Float11* f1, Float11* f2) int res, exp; exp = f1->exp + f2->exp; - res = (((f1->mant * f2->mant) + 0x30) >> 4) << 7; - res = exp > 26 ? res << (exp - 26) : res >> (26 - exp); + res = (((f1->mant * f2->mant) + 0x30) >> 4); + res = exp > 19 ? res << (exp - 19) : res >> (19 - exp); return (f1->sign ^ f2->sign) ? -res : res; }