Diff between 19b460afbc955c0603b2edd2aba6bb08c0f05b99 and baa84b72324050101142941d120a44d4596ef2bf

Changed Files

File Additions Deletions Status
obexd/client/transfer.c +8 -4 modified

Full Patch

diff --git a/obexd/client/transfer.c b/obexd/client/transfer.c
index dded02f..d1edef2 100644
--- a/obexd/client/transfer.c
+++ b/obexd/client/transfer.c
@@ -143,11 +143,15 @@ static void obc_transfer_abort(struct obc_transfer *transfer)
 {
 	struct transfer_callback *callback = transfer->callback;
 
-	if (transfer->xfer == 0)
-		return;
+	if (transfer->xfer > 0) {
+		g_obex_cancel_transfer(transfer->xfer);
+		transfer->xfer = 0;
+	}
 
-	g_obex_cancel_transfer(transfer->xfer);
-	transfer->xfer = 0;
+	if (transfer->obex != NULL) {
+		g_obex_unref(transfer->obex);
+		transfer->obex = NULL;
+	}
 
 	if (callback) {
 		GError *err;