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);
}