From e00a61c48bce26cb96f3d615bd0f08091d7143e1 Mon Sep 17 00:00:00 2001
From: Anthony Minessale <anthm@freeswitch.org>
Date: Tue, 31 Jan 2012 15:31:08 -0600
Subject: [PATCH] [Freeswitch-dev] Absolute conditions are not changing the
 proceed variable... (mod_dialplan_xml.c)

---
 src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

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 45a736facf..db45f2933b 100644
--- a/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c
+++ b/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c
@@ -189,7 +189,7 @@ static int parse_exten(switch_core_session_t *session, switch_caller_profile_t *
 				total++;
 				
 				field = (char *) switch_xml_attr(xregex, "field");
-
+				
 				if (field) {
 					if (strchr(field, '$')) {
 						if ((field_expanded = switch_channel_expand_variables(channel, field)) == field) {
@@ -222,9 +222,11 @@ static int parse_exten(switch_core_session_t *session, switch_caller_profile_t *
 					switch_log_printf(SWITCH_CHANNEL_SESSION_LOG_CLEAN(session), SWITCH_LOG_DEBUG,
 									  "Dialplan: %s Absolute Condition [%s] match=%s\n", switch_channel_get_name(channel), exten_name, all ? "all" : "any");
 					pass++;
+					proceed = 1;
 					if (!all && !xor) break;
 				} else if (time_match == 1) {
 					pass++;
+					proceed = 1;
 					if (!all && !xor) break;
 				}