From: Olle Johansson Date: Tue, 15 Apr 2008 20:39:29 +0000 (+0000) Subject: Merged revisions 114148 via svnmerge from X-Git-Tag: 1.6.2.0-beta1~2470 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=18866623dc16d6a2ac315da4c7b8f41060d7e263;p=thirdparty%2Fasterisk.git Merged revisions 114148 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r114148 | oej | 2008-04-15 22:26:05 +0200 (Tis, 15 Apr 2008) | 2 lines Handle subscribe queues in all situations... Thanks to festr_ on irc for telling me about this bug. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114151 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 47176c66e4..44eb1c163b 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -15505,6 +15505,11 @@ static void handle_response(struct sip_pvt *p, int resp, char *rest, struct sip_ } else { if (!p->subscribed && !p->refer) p->needdestroy = 1; + if (ast_test_flag(&p->flags[1], SIP_PAGE2_STATECHANGEQUEUE)) { + /* Ready to send the next state we have on queue */ + ast_clear_flag(&p->flags[1], SIP_PAGE2_STATECHANGEQUEUE); + cb_extensionstate((char *)p->context, (char *)p->exten, p->laststate, (void *) p); + } } } else if (sipmethod == SIP_BYE) p->needdestroy = 1;