[Home]

Summary:ASTERISK-20441: AEL jump to wrong ext after switch-statement is completed (dialplan pattern)
Reporter:Johan Wilfer (johan)Labels:
Date Opened:2012-09-19 06:28:16Date Closed:
Priority:MinorRegression?
Status:Open/NewComponents:PBX/pbx_ael
Versions:1.8.15.1 1.8.17.0 13.18.4 Frequency of
Occurrence
Constant
Related
Issues:
Environment:Tested with Asterisk 1.8.15.1 and 1.8.17.0-rc1Attachments:
Description:After a switch-statement in ael, the switch uses a goto to the wrong ext.

Consider this dialplan:
{noformat}
context test {
_X. => {
         Noop(Before switch statement, exten: ${EXTEN});
         switch (${EXTEN}) {
           case 12345:
             Noop(In switch statement, case 12345);
             break;
         }

         Noop(After switch statement, exten: ${EXTEN});
       }
}
{noformat}

Results in the following:
{noformat}
   -- Executing [12345@test:1] MSet("SIP/trunk-00000011", "~~EXTEN~~=12345") in new stack
   -- Executing [12345@test:2] NoOp("SIP/trunk-00000011", "Before switch statement, exten: 12345") in new stack
   -- Executing [12345@test:3] Goto("SIP/trunk-00000011", "sw_1677_12345,10") in new stack
   -- Goto (test,sw_1677_12345,10)
   -- Executing [sw_1677_12345@test:10] NoOp("SIP/trunk-00000011", "In switch statement, case 12345") in new stack
   -- Executing [sw_1677_12345@test:11] Goto("SIP/trunk-00000011", "_X.,4") in new stack
   -- Goto (test,_X.,4)
   -- Executing [_X.@test:4] NoOp("SIP/trunk-00000011", "Finish switch_test_1677") in new stack
   -- Executing [_X.@test:5] NoOp("SIP/trunk-00000011", "After switch statement, exten: 12345") in new stack
   -- Auto fallthrough, channel 'SIP/trunk-00000011' status is 'UNKNOWN'
{noformat}

Havn't seen any bad effects yet thought. But the goto should have jumped to 12345,4 insted of _X.,4
Comments:By: Matt Jordan (mjordan) 2012-09-25 08:30:39.696-0500

Thank you for the bug report.  Please keep in mind that AEL and pbx_ael are extended support modules.  Development support for these modules comes from the Asterisk community, and response times may reflect that.  More information on module support states can be found on the Asterisk wiki here:

https://wiki.asterisk.org/wiki/display/AST/Asterisk+Module+Support+States