summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoss Lagerwall <rosslagerwall@gmail.com>2014-08-25 14:18:21 +0100
committerRoss Lagerwall <rosslagerwall@gmail.com>2014-08-29 07:21:00 +0100
commit2153d300f24d3388d7c4ab75a55451ad5a581b5a (patch)
tree7190af20ad9f965792d405483b0d72e473bcdb59
parentbaf4a01c181c8a8f81ffb02cd5bfe1d94083efb9 (diff)
downloadgvfs-2153d300f24d3388d7c4ab75a55451ad5a581b5a.tar.gz
ftp: Don't unlock unlocked mutex
Don't unlock an unlocked mutex since this causes an abort() with the latest glib (and is undefined anyway). https://bugzilla.gnome.org/show_bug.cgi?id=735381
-rw-r--r--daemon/gvfsftptask.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/daemon/gvfsftptask.c b/daemon/gvfsftptask.c
index 068edd83..d78e0d5f 100644
--- a/daemon/gvfsftptask.c
+++ b/daemon/gvfsftptask.c
@@ -232,7 +232,7 @@ g_vfs_ftp_task_acquire_connection (GVfsFtpTask *task)
g_vfs_ftp_task_login (task, ftp->user, ftp->password);
g_vfs_ftp_task_setup_connection (task);
if (G_LIKELY (!g_vfs_ftp_task_is_in_error (task)))
- break;
+ goto out_unlocked;
g_vfs_ftp_connection_free (task->conn);
task->conn = NULL;
@@ -269,8 +269,9 @@ g_vfs_ftp_task_acquire_connection (GVfsFtpTask *task)
break;
}
}
- g_cancellable_disconnect (task->cancellable, id);
g_mutex_unlock (&ftp->mutex);
+out_unlocked:
+ g_cancellable_disconnect (task->cancellable, id);
return task->conn != NULL;
}