aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
authortilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2009-06-19 00:35:18 +0000
committertilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b>2009-06-19 00:35:18 +0000
commit2c29a49bc2b35c942d88fd659ef30de629241151 (patch)
treec20bd4fd57ecb6a8ae3babc06f6b3972014d7bfc /main
parented368a3d1f7f34c21b04b560f3ca056c6d522edf (diff)
If the "h" extension fails, give it another chance in main/pbx.c.
If the "h" extension fails, give it another chance in main/pbx.c, when it returns from the bridge code. Fixes an issue where the "h" extension may occasionally not fire, when a Dial is executed from a Macro. Debugged in #asterisk with user tompaw. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@201827 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main')
-rw-r--r--main/features.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/main/features.c b/main/features.c
index 57fc12c0c..b4bc91646 100644
--- a/main/features.c
+++ b/main/features.c
@@ -2758,7 +2758,9 @@ int ast_bridge_call(struct ast_channel *chan,struct ast_channel *peer,struct ast
bridge_cdr = NULL;
}
}
- ast_set_flag(chan, AST_FLAG_BRIDGE_HANGUP_RUN);
+ if (chan->priority != 1 || !spawn_error) {
+ ast_set_flag(chan, AST_FLAG_BRIDGE_HANGUP_RUN);
+ }
ast_channel_unlock(chan);
/* protect the lastapp/lastdata against the effects of the hangup/dialplan code */
if (bridge_cdr) {