You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2011/06/20 22:54:16 UTC
svn commit: r1137775 - /trafficserver/traffic/trunk/proxy/InkAPI.cc
Author: zwoop
Date: Mon Jun 20 20:54:16 2011
New Revision: 1137775
URL: http://svn.apache.org/viewvc?rev=1137775&view=rev
Log:
TS-826 TSHttpTxnErrorBodySet() can leak memory
Author: William Bardwell
Review: leif
Modified:
trafficserver/traffic/trunk/proxy/InkAPI.cc
Modified: trafficserver/traffic/trunk/proxy/InkAPI.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/InkAPI.cc?rev=1137775&r1=1137774&r2=1137775&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/InkAPI.cc (original)
+++ trafficserver/traffic/trunk/proxy/InkAPI.cc Mon Jun 20 20:54:16 2011
@@ -5232,11 +5232,15 @@ TSHttpTxnErrorBodySet(TSHttpTxn txnp, ch
sdk_assert(buflength > 0);
HttpSM *sm = (HttpSM *) txnp;
+ HttpTransact::State *s = &(sm->t_state);
+
+ if (s->internal_msg_buffer)
+ HttpTransact::free_internal_msg_buffer(s->internal_msg_buffer, s->internal_msg_buffer_fast_allocator_size);
- sm->t_state.internal_msg_buffer = buf;
- sm->t_state.internal_msg_buffer_type = mimetype;
- sm->t_state.internal_msg_buffer_size = buflength;
- sm->t_state.internal_msg_buffer_fast_allocator_size = -1;
+ s->internal_msg_buffer = buf;
+ s->internal_msg_buffer_type = mimetype;
+ s->internal_msg_buffer_size = buflength;
+ s->internal_msg_buffer_fast_allocator_size = -1;
}
void