You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by sa...@apache.org on 2006/11/26 04:48:03 UTC

svn commit: r479264 - in /webservices/axis2/trunk/c: axiom/src/attachments/ modules/core/clientapi/ modules/core/description/ modules/core/transport/http/sender/ samples/user_guide/clients/

Author: samisa
Date: Sat Nov 25 19:48:01 2006
New Revision: 479264

URL: http://svn.apache.org/viewvc?view=rev&rev=479264
Log:
Fixed more leaks, related to dual client and also fixed server crash

Modified:
    webservices/axis2/trunk/c/axiom/src/attachments/mime_body_part.c
    webservices/axis2/trunk/c/modules/core/clientapi/callback_recv.c
    webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c
    webservices/axis2/trunk/c/modules/core/description/op.c
    webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c
    webservices/axis2/trunk/c/samples/user_guide/clients/echo_blocking_dual.c

Modified: webservices/axis2/trunk/c/axiom/src/attachments/mime_body_part.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/attachments/mime_body_part.c?view=diff&rev=479264&r1=479263&r2=479264
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/attachments/mime_body_part.c (original)
+++ webservices/axis2/trunk/c/axiom/src/attachments/mime_body_part.c Sat Nov 25 19:48:01 2006
@@ -17,7 +17,6 @@
 #include "axiom_mime_body_part.h"
 #include <axiom_data_handler.h>
 #include <axis2_hash.h>
-#include <stdio.h>
 
 typedef struct axiom_mime_body_part_impl
 {
@@ -115,7 +114,6 @@
                     hash_index; hash_index = axis2_hash_next(env, hash_index))
         {
             axis2_hash_this(hash_index, &key, NULL, &value);
-            printf("key = %s\n", (char*) key);
             if (value)
             {
                 AXIS2_FREE(env->allocator, value);

Modified: webservices/axis2/trunk/c/modules/core/clientapi/callback_recv.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/modules/core/clientapi/callback_recv.c?view=diff&rev=479264&r1=479263&r2=479264
==============================================================================
--- webservices/axis2/trunk/c/modules/core/clientapi/callback_recv.c (original)
+++ webservices/axis2/trunk/c/modules/core/clientapi/callback_recv.c Sat Nov 25 19:48:01 2006
@@ -156,12 +156,18 @@
     if (callback_recv_impl->callback_map)
     {
         axis2_hash_index_t *hi = NULL;
+        const void *key = NULL;
         void *val = NULL;
         for (hi = axis2_hash_first(callback_recv_impl->callback_map, env); hi;
                 hi = axis2_hash_next(env, hi))
         {
-            if (val)
+            axis2_hash_this(hi, &key, NULL, &val);
+            if (key)
+                AXIS2_FREE(env->allocator, (char*)key);
+
+            /*if (val)
                 AXIS2_FREE(env->allocator, val);
+            */
             val = NULL;
         }
 

Modified: webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c?view=diff&rev=479264&r1=479263&r2=479264
==============================================================================
--- webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c (original)
+++ webservices/axis2/trunk/c/modules/core/clientapi/listener_manager.c Sat Nov 25 19:48:01 2006
@@ -250,6 +250,8 @@
                 }
             }
         }
+
+        AXIS2_QNAME_FREE(qname, env);
     }
 
     if (tl_state)
@@ -337,6 +339,17 @@
 
     if (listener_manager_impl->listener_map)
     {
+        axis2_hash_index_t *hi = NULL;
+        const void *key = NULL;
+        void *val = NULL;
+        for (hi = axis2_hash_first(listener_manager_impl->listener_map, env); hi;
+                hi = axis2_hash_next(env, hi))
+        {
+            axis2_hash_this(hi, &key, NULL, &val);
+            if (val)
+                AXIS2_FREE(env->allocator, val);
+        }
+
         axis2_hash_free(listener_manager_impl->listener_map, env);
         listener_manager_impl->listener_map = NULL;
     }

Modified: webservices/axis2/trunk/c/modules/core/description/op.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/modules/core/description/op.c?view=diff&rev=479264&r1=479263&r2=479264
==============================================================================
--- webservices/axis2/trunk/c/modules/core/description/op.c (original)
+++ webservices/axis2/trunk/c/modules/core/description/op.c Sat Nov 25 19:48:01 2006
@@ -881,6 +881,7 @@
 
     if (op_impl->msg_recv)
     {
+        AXIS2_MSG_RECV_FREE(op_impl->msg_recv, env);
         op_impl->msg_recv = NULL;
     }
 

Modified: webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c?view=diff&rev=479264&r1=479263&r2=479264
==============================================================================
--- webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c (original)
+++ webservices/axis2/trunk/c/modules/core/transport/http/sender/soap_over_http_sender.c Sat Nov 25 19:48:01 2006
@@ -442,8 +442,8 @@
 
     status_code = AXIS2_HTTP_CLIENT_SEND(sender_impl->client, env, request);
 
-    AXIS2_FREE(env->allocator, output_stream);
-    output_stream = NULL;
+    /*AXIS2_FREE(env->allocator, output_stream);
+    output_stream = NULL;*/
 
     AXIS2_FREE(env->allocator, buffer);
     buffer = NULL;

Modified: webservices/axis2/trunk/c/samples/user_guide/clients/echo_blocking_dual.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/samples/user_guide/clients/echo_blocking_dual.c?view=diff&rev=479264&r1=479263&r2=479264
==============================================================================
--- webservices/axis2/trunk/c/samples/user_guide/clients/echo_blocking_dual.c (original)
+++ webservices/axis2/trunk/c/samples/user_guide/clients/echo_blocking_dual.c Sat Nov 25 19:48:01 2006
@@ -98,7 +98,10 @@
         axis2_char_t *om_str = NULL;
         om_str = AXIOM_NODE_TO_STRING(ret_node, env);
         if (om_str)
+        {
             printf("\nReceived OM : %s\n", om_str);
+            AXIS2_FREE(env->allocator, om_str);
+        }
         printf("\necho client invoke SUCCESSFUL!\n");
     }
     else



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org