diff --git a/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c b/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c index b4af4a3579..c5f7810c1a 100644 --- a/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c +++ b/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c @@ -370,6 +370,12 @@ static int parse_exten(switch_core_session_t *session, switch_caller_profile_t * if ((all && !fail) || (!all && pass)) { anti_action = SWITCH_FALSE; } + if (all && total != pass) { + proceed = 1; + pass = 0; + fail++; + anti_action = SWITCH_TRUE; + } } switch_safe_free(field_expanded);