for(i = 0; i < 2; i++) {
if (session->dmachine[i] && !switch_channel_test_flag(session->channel, CF_BROADCAST)) {
- if (switch_channel_try_dtmf_lock(session->channel) == SWITCH_STATUS_SUCCESS) {
- switch_ivr_dmachine_ping(session->dmachine[i], NULL);
- switch_channel_dtmf_unlock(session->channel);
- }
+ switch_ivr_dmachine_ping(session->dmachine[i], NULL);
}
}
is_timeout++;
}
- switch_mutex_lock(dmachine->mutex);
+ if (switch_mutex_trylock(dmachine->mutex) != SWITCH_STATUS_SUCCESS) {
+ return SWITCH_STATUS_SUCCESS;
+ }
if (zstr(dmachine->digits) && !is_timeout) {
r = SWITCH_STATUS_SUCCESS;