summaryrefslogtreecommitdiff
path: root/daemon/gvfsbackendftp.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@gnome.org>2009-08-11 03:31:26 +0200
committerBenjamin Otte <otte@gnome.org>2009-08-19 11:08:02 +0200
commit3d781138af38b84841c1a59a5c959ac3a412686c (patch)
treebcdaad99bed21ae2bb4299353d3585c29c4fb78e /daemon/gvfsbackendftp.c
parent42bab3f1fe676ad2b089c321ac0a06e16d0feb15 (diff)
downloadgvfs-3d781138af38b84841c1a59a5c959ac3a412686c.tar.gz
[FTP] plug memleak in login code
Diffstat (limited to 'daemon/gvfsbackendftp.c')
-rw-r--r--daemon/gvfsbackendftp.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/daemon/gvfsbackendftp.c b/daemon/gvfsbackendftp.c
index 9bba8e3a..20318a6d 100644
--- a/daemon/gvfsbackendftp.c
+++ b/daemon/gvfsbackendftp.c
@@ -371,24 +371,24 @@ try_login:
g_free (ftp->password);
if (anonymous)
{
- ftp->user = g_strdup ("anonymous");
- ftp->password = g_strdup ("");
+ g_free (username);
+ g_free (password);
+ ftp->user = g_strdup ("anonymous");
+ ftp->password = g_strdup ("");
if (g_vfs_ftp_task_login (&task, "anonymous", "") != 0)
- {
- break;
- }
+ break;
+ g_free (ftp->user);
+ g_free (ftp->password);
ftp->user = NULL;
ftp->password = NULL;
}
else
{
- ftp->user = username ? g_strdup (username) : g_strdup ("");
- ftp->password = g_strdup (password);
+ ftp->user = username ? username : g_strdup ("");
+ ftp->password = password;
if (g_vfs_ftp_task_login (&task, ftp->user, ftp->password) != 0)
break;
}
- g_free (username);
- g_free (password);
if (break_on_fail ||
!g_error_matches (task.error, G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED))