Fix a bug where when calls on the trunk side hang up while on hold, the state

is not properly reflected.

(closes issue #11990, reported by anakaoka, patched by me)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@110163 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.4
Russell Bryant 17 years ago
parent ebb67cf852
commit f3274be612

@ -4353,7 +4353,9 @@ static int sla_trunk_exec(struct ast_channel *chan, void *data)
conf = NULL;
trunk->chan = NULL;
trunk->on_hold = 0;
sla_change_trunk_state(trunk, SLA_TRUNK_STATE_IDLE, ALL_TRUNK_REFS, NULL);
if (!pbx_builtin_getvar_helper(chan, "SLATRUNK_STATUS"))
pbx_builtin_setvar_helper(chan, "SLATRUNK_STATUS", "SUCCESS");
@ -4368,7 +4370,6 @@ static int sla_trunk_exec(struct ast_channel *chan, void *data)
AST_LIST_TRAVERSE_SAFE_END
ast_mutex_unlock(&sla.lock);
if (ringing_trunk) {
sla_change_trunk_state(ringing_trunk->trunk, SLA_TRUNK_STATE_IDLE, ALL_TRUNK_REFS, NULL);
free(ringing_trunk);
pbx_builtin_setvar_helper(chan, "SLATRUNK_STATUS", "UNANSWERED");
/* Queue reprocessing of ringing trunks to make stations stop ringing

Loading…
Cancel
Save