diff options
author | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-06-19 00:35:18 +0000 |
---|---|---|
committer | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-06-19 00:35:18 +0000 |
commit | 2c29a49bc2b35c942d88fd659ef30de629241151 (patch) | |
tree | c20bd4fd57ecb6a8ae3babc06f6b3972014d7bfc /main | |
parent | ed368a3d1f7f34c21b04b560f3ca056c6d522edf (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.c | 4 |
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) { |