65 lines
2.8 KiB
Diff
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
|
|
|