diff --git a/libfprint/drivers/goodixmoc/goodix_proto.c b/libfprint/drivers/goodixmoc/goodix_proto.c index 3812ea8d..9bcb6fe4 100644 --- a/libfprint/drivers/goodixmoc/goodix_proto.c +++ b/libfprint/drivers/goodixmoc/goodix_proto.c @@ -253,6 +253,9 @@ gx_proto_parse_header (FpiByteReader *reader, if (!fpi_byte_reader_get_uint8 (reader, &pheader->rev_crc8)) g_return_val_if_reached (-1); + if (pheader->len < PACKAGE_CRC_SIZE) + return -1; + pheader->len -= PACKAGE_CRC_SIZE; return 0;