From 10c0b68549803e837a13f7c6baa5c3235080abf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= Date: Wed, 1 Jul 2026 15:49:31 +0200 Subject: [PATCH] mafpmoc: Copy the most significant bit of the cmd instead of LSB This was causing the command not to be properly used in big endian archs --- libfprint/drivers/mafpmoc/mafpmoc.c | 2 +- meson.build | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libfprint/drivers/mafpmoc/mafpmoc.c b/libfprint/drivers/mafpmoc/mafpmoc.c index 2d9ef95e..7af3dc4e 100644 --- a/libfprint/drivers/mafpmoc/mafpmoc.c +++ b/libfprint/drivers/mafpmoc/mafpmoc.c @@ -108,7 +108,7 @@ ma_protocol_build_package (uint32_t package_len, memcpy (ppackage, &header, PACKAGE_HEADER_SIZE); if (cmd_len) - memcpy (ppackage + PACKAGE_HEADER_SIZE, &cmd, 1); + ppackage[PACKAGE_HEADER_SIZE] = cmd & 0xFF; if (data_len) memcpy (ppackage + PACKAGE_HEADER_SIZE + cmd_len, data + !cmd_len, data_len); diff --git a/meson.build b/meson.build index a67eae7b..60910d0e 100644 --- a/meson.build +++ b/meson.build @@ -141,7 +141,7 @@ drivers_info = { 'fpcmoc': {}, 'realtek': {}, 'focaltech_moc': {}, - 'mafpmoc': { 'endian_dependent': true }, + 'mafpmoc': {}, 'secugen': {}, # SPI driver (non-optional if SPI is available)