From c1dcaa805d840888783f5285c983261ab763b0dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= Date: Thu, 13 Feb 2025 05:27:47 +0100 Subject: [PATCH] goodixmoc: Fix potential invalid shift on integer type ../libfprint/drivers/goodixmoc/goodix_proto.c:111:26: runtime error: left shift of 1 by 31 places cannot be represented in type 'int' #0 0x7f6776799c2e in reflect ../libfprint/drivers/goodixmoc/goodix_proto.c:111 #1 0x7f677679a0f3 in crc32_final ../libfprint/drivers/goodixmoc/goodix_proto.c:147 #2 0x7f677679a3ee in gx_proto_crc32_calc ../libfprint/drivers/goodixmoc/goodix_proto.c:164 #3 0x7f677679d7aa in gx_proto_init_sensor_config ../libfprint/drivers/goodixmoc/goodix_proto.c:464 #4 0x7f6776797b40 in gx_fp_init ../libfprint/drivers/goodixmoc/goodix.c:1415 #5 0x7f67766cc56e in fp_device_open ../libfprint/fp-device.c:866 #6 0x7f67766d2fd4 in fp_device_open_sync ../libfprint/fp-device.c:1872 --- libfprint/drivers/goodixmoc/goodix_proto.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libfprint/drivers/goodixmoc/goodix_proto.c b/libfprint/drivers/goodixmoc/goodix_proto.c index d7713f0b..ccd06cbb 100644 --- a/libfprint/drivers/goodixmoc/goodix_proto.c +++ b/libfprint/drivers/goodixmoc/goodix_proto.c @@ -107,7 +107,7 @@ reflect (uint32_t data, uint8_t n_bits) * If the LSB bit is set, set the reflection of it. */ if (data & 0x01) - reflection |= (1 << ((n_bits - 1) - bit)); + reflection |= (1LU << ((n_bits - 1) - bit)); data = (data >> 1); }