Diff between d21fef52df6fa8bbe59e42c0e3aea334724cc953 and 5c50f0409882ad775b53793297a78dd2b9bdb1c0

Changed Files

File Additions Deletions Status
gobex/gobex-transfer.c +3 -0 modified

Full Patch

diff --git a/gobex/gobex-transfer.c b/gobex/gobex-transfer.c
index 3978c13..be5ebcb 100644
--- a/gobex/gobex-transfer.c
+++ b/gobex/gobex-transfer.c
@@ -71,6 +71,9 @@ static void transfer_free(struct transfer *transfer)
 static void transfer_complete(struct transfer *transfer, GError *err)
 {
 	transfer->complete_func(transfer->obex, err, transfer->user_data);
+	/* Check if the complete_func removed the transfer */
+	if (g_slist_find(transfers, transfer) == NULL)
+		return;
 	transfer_free(transfer);
 }