Index: main/features.c =================================================================== --- main/features.c (revision 320937) +++ main/features.c (working copy) @@ -3731,7 +3731,7 @@ ast_log(LOG_DEBUG, "Passing DTMF through, since it is not a feature code\n"); } ast_write(other, f); - sendingdtmfdigit = 1; + sendingdtmfdigit++; } else { /* If ast_opt_transmit_silence is set, then we need to make sure we are * transmitting something while we hold on to the DTMF waiting for a @@ -3757,11 +3757,11 @@ featurecode = peer_featurecode; } - if (sendingdtmfdigit == 1) { + if (sendingdtmfdigit) { /* We let the BEGIN go through happily, so let's not bother with the END, * since we already know it's not something we bother with */ ast_write(other, f); - sendingdtmfdigit = 0; + sendingdtmfdigit--; } else { /*! append the event to featurecode. we rely on the string being zero-filled, and * not overflowing it.