diff --git a/main/features.c b/main/features.c index 664c6c87b1ad245cf7af6585a08593c7a2e3bdb5..2981310331ff7c79fc5dd45f77e2a111ecf6dfc9 100644 --- a/main/features.c +++ b/main/features.c @@ -2952,7 +2952,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) {