diff --git a/common_audio/signal_processing/min_max_operations.c b/common_audio/signal_processing/min_max_operations.c index 1b9542e7ef..6acf88287b 100644 --- a/common_audio/signal_processing/min_max_operations.c +++ b/common_audio/signal_processing/min_max_operations.c @@ -25,6 +25,7 @@ */ #include +#include #include "rtc_base/checks.h" #include "common_audio/signal_processing/include/signal_processing_library.h" @@ -67,7 +68,8 @@ int32_t WebRtcSpl_MaxAbsValueW32C(const int32_t* vector, size_t length) { RTC_DCHECK_GT(length, 0); for (i = 0; i < length; i++) { - absolute = abs((int)vector[i]); + absolute = + (vector[i] != INT_MIN) ? abs((int)vector[i]) : INT_MAX + (uint32_t)1; if (absolute > maximum) { maximum = absolute; }