| Index: webrtc/modules/audio_processing/aec3/suppression_gain.cc | 
| diff --git a/webrtc/modules/audio_processing/aec3/suppression_gain.cc b/webrtc/modules/audio_processing/aec3/suppression_gain.cc | 
| index 0e50292008947cbc1799d3affb5e3faf35867792..4bf452cbbea51563b86516e770385ac48d32ee33 100644 | 
| --- a/webrtc/modules/audio_processing/aec3/suppression_gain.cc | 
| +++ b/webrtc/modules/audio_processing/aec3/suppression_gain.cc | 
| @@ -325,11 +325,21 @@ void SuppressionGain::GetGain( | 
| bool saturated_echo, | 
| const std::vector<std::vector<float>>& render, | 
| size_t num_capture_bands, | 
| +    bool force_zero_gain, | 
| float* high_bands_gain, | 
| std::array<float, kFftLengthBy2Plus1>* low_band_gain) { | 
| RTC_DCHECK(high_bands_gain); | 
| RTC_DCHECK(low_band_gain); | 
|  | 
| +  if (force_zero_gain) { | 
| +    previous_gain_squared_.fill(0.f); | 
| +    std::copy(comfort_noise_power.begin() + 1, comfort_noise_power.end() - 1, | 
| +              previous_masker_.begin()); | 
| +    low_band_gain->fill(0.f); | 
| +    *high_bands_gain = 0.f; | 
| +    return; | 
| +  } | 
| + | 
| // Choose margin to use. | 
| const float margin = saturated_echo ? 0.001f : 0.01f; | 
| switch (optimization_) { | 
|  |