<p>Joshua Colp has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.asterisk.org/6168">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">res_pjsip_session: Release media resources on session end quicker.<br><br>A change was made long ago where the session was kept around<br>until the underlying INVITE session had been destroyed. This<br>had the side effect of also keeping the underlying media resources<br>around for this time as well.<br><br>This change ensures that when we know the session is ending we<br>release the media resources immediately.<br><br>ASTERISK-27110<br><br>Change-Id: I643e431d5c3bf05cda220c1d39e824a505a29b82<br>---<br>M res/res_pjsip_session.c<br>1 file changed, 17 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.asterisk.org:29418/asterisk refs/changes/68/6168/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">diff --git a/res/res_pjsip_session.c b/res/res_pjsip_session.c<br>index bb349a4..103b526 100644<br>--- a/res/res_pjsip_session.c<br>+++ b/res/res_pjsip_session.c<br>@@ -3134,6 +3134,23 @@<br>                       iter->session_end(session);<br>                }<br>     }<br>+<br>+ if (session->channel) {<br>+           ast_channel_lock(session->channel);<br>+       }<br>+<br>+ /* To simplify things we guarantee that the media states will exist,<br>+  * but remain empty, until the session itself is destroyed. This ensures<br>+      * that if the channel is going to read data it can return a null frame<br>+       * gracefully.<br>+        */<br>+  SWAP(session->active_media_state, session->pending_media_state);<br>+       ast_sip_session_media_state_reset(session->pending_media_state);<br>+<br>+       if (session->channel) {<br>+           ast_channel_unlock(session->channel);<br>+     }<br>+<br>  return 0;<br> }<br> <br></pre><p>To view, visit <a href="https://gerrit.asterisk.org/6168">change 6168</a>. To unsubscribe, visit <a href="https://gerrit.asterisk.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.asterisk.org/6168"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: asterisk </div>
<div style="display:none"> Gerrit-Branch: 15 </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I643e431d5c3bf05cda220c1d39e824a505a29b82 </div>
<div style="display:none"> Gerrit-Change-Number: 6168 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Joshua Colp <jcolp@digium.com> </div>