libfprint/SOURCES/0066-fpi-usb-Use-unsigned-l...

65 lines
2.8 KiB
Diff

From 2af78ce8e06f513b96afb639a1406c116b77ecc2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
Date: Tue, 3 Dec 2019 19:34:58 +0100
Subject: [PATCH 066/181] fpi-usb: Use unsigned length for USB async transfers
Properly follow function signature using a temporary gsize variable address
to make the function use the same pointer type and avoid troubles at
deferencing it, while use automatic-casting to switch to signed one if
transfer succeeded.
---
libfprint/fpi-usb-transfer.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/libfprint/fpi-usb-transfer.c b/libfprint/fpi-usb-transfer.c
index 64d706f..08e75cb 100644
--- a/libfprint/fpi-usb-transfer.c
+++ b/libfprint/fpi-usb-transfer.c
@@ -454,6 +454,7 @@ fpi_usb_transfer_submit_sync (FpiUsbTransfer *transfer,
GError **error)
{
gboolean res;
+ gsize actual_length;
g_return_val_if_fail (transfer, FALSE);
@@ -469,7 +470,7 @@ fpi_usb_transfer_submit_sync (FpiUsbTransfer *transfer,
transfer->endpoint,
transfer->buffer,
transfer->length,
- &transfer->actual_length,
+ &actual_length,
timeout_ms,
NULL,
error);
@@ -485,7 +486,7 @@ fpi_usb_transfer_submit_sync (FpiUsbTransfer *transfer,
transfer->idx,
transfer->buffer,
transfer->length,
- &transfer->actual_length,
+ &actual_length,
timeout_ms,
NULL,
error);
@@ -496,7 +497,7 @@ fpi_usb_transfer_submit_sync (FpiUsbTransfer *transfer,
transfer->endpoint,
transfer->buffer,
transfer->length,
- &transfer->actual_length,
+ &actual_length,
timeout_ms,
NULL,
error);
@@ -511,6 +512,8 @@ fpi_usb_transfer_submit_sync (FpiUsbTransfer *transfer,
if (!res)
transfer->actual_length = -1;
+ else
+ transfer->actual_length = actual_length;
return res;
}
--
2.24.1