$OpenBSD: patch-daemon_gvfsftptask_c,v 1.1 2013/12/21 13:21:49 ajacoutot Exp $

From 0d30b628990db246a7a9fec4c43e4ca3a5df46b0 Mon Sep 17 00:00:00 2001
From: Benjamin Otte <otte@redhat.com>
Date: Sat, 21 Dec 2013 02:22:12 +0000
Subject: ftp: Always close data connections when done

--- daemon/gvfsftptask.c.orig	Thu Nov  7 16:12:17 2013
+++ daemon/gvfsftptask.c	Sat Dec 21 13:59:14 2013
@@ -276,6 +276,8 @@ g_vfs_ftp_task_acquire_connection (GVfsFtpTask *task)
  * or frees it if it is in an error state. You must use this function to free
  * a @task's connection, never use g_vfs_ftp_connection_free() directly. If
  * the task does not have a current connection, this function just returns.
+ *
+ * This function also closes all potentially open data connections.
  **/
 static void
 g_vfs_ftp_task_release_connection (GVfsFtpTask *task)
@@ -285,6 +287,8 @@ g_vfs_ftp_task_release_connection (GVfsFtpTask *task)
   /* we allow task->conn == NULL to ease error cases */
   if (task->conn == NULL)
     return;
+
+  g_vfs_ftp_task_close_data_connection (task);
 
   g_mutex_lock (&task->backend->mutex);
   if (task->backend->queue && g_vfs_ftp_connection_is_usable (task->conn))
