<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/2763/">https://reviewboard.asterisk.org/r/2763/</a>
     </td>
    </tr>
   </table>
   <br />




<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/static/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 and jrose.</div>
<div>By opticron.</div>


<p style="color: grey;"><i>Updated Aug. 15, 2013, 9:38 p.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;">Address Richard&#39;s comments.</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-22142">ASTERISK-22142</a>


</div>



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


<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;">This change protects accesses of res_parking such that it can unload safely once transient uses of its registered functions are complete. It was necessary to add ref and unref callbacks to the parking vtable to let res_parking know when it was being used to prevent dangerous unloading.

This adds calls to all the parking unload functions and moves application loading and unloading into functions in parking_applications.c similar to the rest of the parts of res_parking.</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;">Unloaded and reloaded res_parking ensuring that created dialplan was removed and that tests passed once reloaded.</pre>
  </td>
 </tr>
</table>


<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/include/asterisk/parking.h <span style="color: grey">(396821)</span></li>

 <li>/trunk/main/bridge_channel.c <span style="color: grey">(396821)</span></li>

 <li>/trunk/main/features.c <span style="color: grey">(396821)</span></li>

 <li>/trunk/main/parking.c <span style="color: grey">(396821)</span></li>

 <li>/trunk/res/parking/parking_applications.c <span style="color: grey">(396821)</span></li>

 <li>/trunk/res/parking/parking_bridge_features.c <span style="color: grey">(396821)</span></li>

 <li>/trunk/res/parking/parking_tests.c <span style="color: grey">(396821)</span></li>

 <li>/trunk/res/parking/res_parking.h <span style="color: grey">(396821)</span></li>

 <li>/trunk/res/res_parking.c <span style="color: grey">(396821)</span></li>

</ul>

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







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




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