]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
freetdm: ftmod_r2 - set the FTDM_CHANNEL_USER_HANGUP flag right before changing chan...
authorArnaldo Pereira <arnaldo@sangoma.com>
Wed, 5 Jan 2011 17:27:20 +0000 (15:27 -0200)
committerArnaldo Pereira <arnaldo@sangoma.com>
Wed, 5 Jan 2011 17:27:20 +0000 (15:27 -0200)
libs/freetdm/src/ftdm_io.c

index 21354c4442fda44186debe3493125b9d419082b9..1b265e154d8bfad2f8137271598e720cabff54f2 100644 (file)
@@ -2123,8 +2123,6 @@ static ftdm_status_t _ftdm_channel_call_hangup_nl(ftdm_channel_t *chan, const ch
 {
        ftdm_status_t status = FTDM_SUCCESS;
        
-       ftdm_set_flag(chan, FTDM_CHANNEL_USER_HANGUP);
-
        ftdm_set_echocancel_call_end(chan);
        
        if (chan->state != FTDM_CHANNEL_STATE_DOWN) {
@@ -2135,6 +2133,7 @@ static ftdm_status_t _ftdm_channel_call_hangup_nl(ftdm_channel_t *chan, const ch
                if (chan->hangup_timer) {
                        ftdm_sched_cancel_timer(globals.timingsched, chan->hangup_timer);
                }
+               ftdm_set_flag(chan, FTDM_CHANNEL_USER_HANGUP);
                status = ftdm_channel_set_state(file, func, line, chan, FTDM_CHANNEL_STATE_HANGUP, 1);
        } else {
                /* the signaling stack did not touch the state,