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





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On July 10th, 2014, 11 a.m. CDT, <b>Corey Farrell</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Have you done leak testing?  I suspect the change to __frame_free will result in leaks that will be reported by REF_DEBUG.</pre>
 </blockquote>




 <p>On July 10th, 2014, 11:17 a.m. CDT, <b>opticron</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I have been watching for leaks here. There is nothing major that I see, but I have some further investigation to do.</pre>
 </blockquote>








</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">This will definitely cause leaks. Easiest example is in ex_adpcm.h - frame is statically allocated and bumps the ref count to the format.

We either need to require static frames to bump the reference count to formats they use, or not. If not, then static frames have to have a *very* short lifetime (not all do). So I'm not sure we can get away with this.</pre>
<br />










<p>- Matt</p>


<br />
<p>On July 10th, 2014, 10:58 a.m. CDT, opticron wrote:</p>








<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.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for Asterisk Developers, Corey Farrell, Joshua Colp, and Matt Jordan.</div>
<div>By opticron.</div>


<p style="color: grey;"><i>Updated July 10, 2014, 10:58 a.m.</i></p>







<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-23960">ASTERISK-23960</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 contains the fixes necessary to get a PJSIP call up and playing files from the Playback() application with a translation path in the mix.

* channel.c: The set format helper functions were not actually setting the newly chosen formats resulting in no audio.
* frame.c: The format on the frame was being overzealously unreffed resulting in a crash.
* sorcery.c: The codec retrieval code was using the wrong level of indirection for ast_format_cap structures resuting in a crash for "pjsip show endpoint x"
* translate.c: The chosen codecs were being set backward on set vs native for what was actually desired causing incorrect codecs to be chosen.
* res_pjsip_sdp_rtp.c: An ast_rtp_codecs struct was not being initialized properly causing a crash.</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;">Call testing.</pre>
  </td>
 </tr>
</table>


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

 <li>team/group/media_formats-reviewed-trunk/res/res_pjsip_sdp_rtp.c <span style="color: grey">(418253)</span></li>

 <li>team/group/media_formats-reviewed-trunk/main/translate.c <span style="color: grey">(418253)</span></li>

 <li>team/group/media_formats-reviewed-trunk/main/sorcery.c <span style="color: grey">(418253)</span></li>

 <li>team/group/media_formats-reviewed-trunk/main/frame.c <span style="color: grey">(418253)</span></li>

 <li>team/group/media_formats-reviewed-trunk/main/channel.c <span style="color: grey">(418253)</span></li>

</ul>

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







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








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