Diff between b29147c00079b72cb386ea3c388f9c0d9e5540a2 and 969cac307c89ef31a41a0b614dcc554596079f20

Changed Files

File Additions Deletions Status
obexd/client/session.c +10 -10 modified

Full Patch

diff --git a/obexd/client/session.c b/obexd/client/session.c
index b7a059d..83374b5 100644
--- a/obexd/client/session.c
+++ b/obexd/client/session.c
@@ -970,6 +970,16 @@ static void put_xfer_progress(GwObexXfer *xfer, gpointer user_data)
 	return;
 
 complete:
+	gw_obex_xfer_close(session->xfer, NULL);
+	gw_obex_xfer_free(session->xfer);
+	session->xfer = NULL;
+
+	g_free(session->filename);
+	session->filename = NULL;
+
+	g_free(session->name);
+	session->name = NULL;
+
 	if (session->agent_path && session->agent_name) {
 		message = dbus_message_new_method_call(session->agent_name,
 			session->agent_path, AGENT_INTERFACE, "Complete");
@@ -986,16 +996,6 @@ complete:
 		filename = g_ptr_array_index(session->pending, 0);
 		g_ptr_array_remove(session->pending, filename);
 
-		gw_obex_xfer_close(session->xfer, NULL);
-		gw_obex_xfer_free(session->xfer);
-		session->xfer = NULL;
-
-		g_free(session->filename);
-		session->filename = NULL;
-
-		g_free(session->name);
-		session->name = NULL;
-
 		if (session->transfer_path) {
 			g_dbus_unregister_interface(session->conn,
 					session->transfer_path, TRANSFER_INTERFACE);