You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-commits@axis.apache.org by bi...@apache.org on 2018/08/21 16:26:23 UTC

svn commit: r1838568 - /axis/axis2/c/core/trunk/axiom/src/soap/soap_fault_text.c

Author: billblough
Date: Tue Aug 21 16:26:23 2018
New Revision: 1838568

URL: http://svn.apache.org/viewvc?rev=1838568&view=rev
Log:
Fix memleak

Modified:
    axis/axis2/c/core/trunk/axiom/src/soap/soap_fault_text.c

Modified: axis/axis2/c/core/trunk/axiom/src/soap/soap_fault_text.c
URL: http://svn.apache.org/viewvc/axis/axis2/c/core/trunk/axiom/src/soap/soap_fault_text.c?rev=1838568&r1=1838567&r2=1838568&view=diff
==============================================================================
--- axis/axis2/c/core/trunk/axiom/src/soap/soap_fault_text.c (original)
+++ axis/axis2/c/core/trunk/axiom/src/soap/soap_fault_text.c Tue Aug 21 16:26:23 2018
@@ -128,7 +128,15 @@ axiom_soap_fault_text_free(
     const axutil_env_t * env)
 {
 
+    /*
+     * Investigation of the call stack shows that namespace_free is never
+     * getting called for this namespace, whether or not the namespace was
+     * used.  This results in a memory leak.  Removing the used check should
+     * in theory result in a double free, but doesn't.
+     * TODO: figure out the underlying problem and fix it
     if(fault_text->lang_ns_used == AXIS2_FALSE && fault_text->lang_namespace)
+    */
+    if(fault_text->lang_namespace)
     {
         axiom_namespace_free(fault_text->lang_namespace, env);
         fault_text->lang_namespace = NULL;