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 mi...@apache.org on 2008/05/23 16:05:52 UTC

svn commit: r659544 - /webservices/axis2/trunk/c/util/src/url.c

Author: milinda
Date: Fri May 23 07:05:51 2008
New Revision: 659544

URL: http://svn.apache.org/viewvc?rev=659544&view=rev
Log:
Fixing memory leaks caused by axutil_url_encode function.

Modified:
    webservices/axis2/trunk/c/util/src/url.c

Modified: webservices/axis2/trunk/c/util/src/url.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/src/url.c?rev=659544&r1=659543&r2=659544&view=diff
==============================================================================
--- webservices/axis2/trunk/c/util/src/url.c (original)
+++ webservices/axis2/trunk/c/util/src/url.c Fri May 23 07:05:51 2008
@@ -630,7 +630,8 @@
     axis2_char_t *buff, int len)
 {
     axis2_char_t string[4];
-    axis2_char_t *expand_buffer;
+    axis2_char_t *expand_buffer = NULL;
+	axis2_char_t *temp = NULL;
     int i;
     for (i = 0; i < len && buff[i]; i++)
     {
@@ -650,7 +651,13 @@
                 (axis2_char_t *) AXIS2_MALLOC (env->allocator, len * 2);
             memset (expand_buffer, 0, len * 2);
             len *= 2;
-            dest = memmove (expand_buffer, dest, strlen (dest));
+            temp = memmove (expand_buffer, dest, strlen (dest));
+			if(dest)
+			{
+				AXIS2_FREE(env->allocator, dest);
+				dest = NULL;
+			}
+			dest = temp;
         }
         strcat (dest, string);
     }