Summary:ASTERISK-25341: bridge: Hangups may get lost when executing actions
Reporter:Joshua C. Colp (jcolp)Labels:
Date Opened:2015-08-24 06:15:54Date Closed:2015-08-24 17:13:39
Versions:13.5.0 Frequency of
Description:When the bridging core invokes actions it performs no check afterwards on whether the underlying channel has hung up or not. In practice there is a chance for this to happen. Take the following scenario:

1. DTMF based features are enabled which require 2 digits to activate
2. The first digit is entered and a feature timeout occurs
3. DTMF is streamed out to the other channel
4. The other channel hangs up the call immediately upon DTMF reception

If step 4 occurs whilst the DTMF is streamed out the underlying dtmf stream function becomes aware of the hangup and returns an error. The bridge code, however, does not react to this error or check for channel hang up. It continues to go on thinking the channel has not hung up.