]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Fix a bug where when calls on the trunk side hang up while on hold, the state
authorRussell Bryant <russell@russellbryant.com>
Wed, 19 Mar 2008 22:57:59 +0000 (22:57 +0000)
committerRussell Bryant <russell@russellbryant.com>
Wed, 19 Mar 2008 22:57:59 +0000 (22:57 +0000)
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

apps/app_meetme.c

index 9dbdea821fe2c5d70f0429608b8b5e031632a334..3a7d923c7b5a67379e20faff4ad9b3be8ff9e1db 100644 (file)
@@ -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