]> sjero.net Git - wget/blobdiff - src/ftp.c
Fix some memory leaks.
[wget] / src / ftp.c
index 2cc341bd2a09f70f561f6d5b26f0364ffabdc9dc..9e4f3d76bcbc231f4c74402fd00a81c2eed100f9 100644 (file)
--- a/src/ftp.c
+++ b/src/ftp.c
@@ -301,10 +301,20 @@ getftp (struct url *u, wgint passed_expected_bytes, wgint *qtyread,
 
       csock = connect_to_host (host, port);
       if (csock == E_HOST)
-        return HOSTERR;
+        {
+          if (con->proxy)
+            xfree (logname);
+
+          return HOSTERR;
+        }
       else if (csock < 0)
-        return (retryable_socket_connect_error (errno)
-                ? CONERROR : CONIMPOSSIBLE);
+        {
+          if (con->proxy)
+            xfree (logname);
+
+          return (retryable_socket_connect_error (errno)
+                  ? CONERROR : CONIMPOSSIBLE);
+        }
 
       if (cmd & LEAVE_PENDING)
         con->csock = csock;