<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://reviewboard.asterisk.org/r/1776/">https://reviewboard.asterisk.org/r/1776/</a>
     </td>
    </tr>
   </table>
   <br />


<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for Asterisk Developers.</div>
<div>By Tilghman Lesher.</div>


<p style="color: grey;"><i>Updated March 8, 2012, 1:39 a.m.</i></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Changes</h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Newest patch uses a dialplan trick that I discussed with murf years ago to solve another problem with AEL-generated dialplans:  start with a priority other than 1.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The issue in question wants variables similar to how Macro worked, which presented variables in the dialplan to denote the calling context, extension, and priority.  This might be similarly set by AEL, except that AEL doesn&#39;t have the information to pass at the right time.  It has the information before the call to Gosub is made, but it needs to be passed into the Gosub, so it can be saved on the stack (and thus correctly disappear, restoring previous values, when Return is executed.  Thus, STACK_PEEK was born, with the intention of being able to mimic features in 1.4&#39;s AEL that are not present anymore.

Whether this goes into a version of Asterisk earlier than 11 is a case for the bug reporter to make.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Added test cases to test_gosub, in the process discovering another bug that has since been fixed.  Works as designed.</pre>
  </td>
 </tr>
</table>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="https://issues.asterisk.org/jira/browse/ASTERISK-19336">ASTERISK-19336</a>


</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> (updated)</h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>/trunk/apps/app_stack.c <span style="color: grey">(358080)</span></li>

 <li>/trunk/funcs/func_dialplan.c <span style="color: grey">(358080)</span></li>

 <li>/trunk/res/ael/pval.c <span style="color: grey">(358080)</span></li>

 <li>/trunk/tests/test_gosub.c <span style="color: grey">(358080)</span></li>

 <li>/trunk/utils/ael_main.c <span style="color: grey">(358080)</span></li>

 <li>/trunk/utils/conf2ael.c <span style="color: grey">(358080)</span></li>

</ul>

<p><a href="https://reviewboard.asterisk.org/r/1776/diff/" style="margin-left: 3em;">View Diff</a></p>




  </td>
 </tr>
</table>




  </div>
 </body>
</html>