mirror of
https://gitlab.freedesktop.org/libfprint/libfprint.git
synced 2026-06-11 18:38:07 +00:00
debian/patches: Don't byte-swap two times the NBIS print array contents
Fixes virtual-image test in libfprint for s390x
This commit is contained in:
+65
@@ -0,0 +1,65 @@
|
|||||||
|
From: =?utf-8?b?Ik1hcmNvIFRyZXZpc2FuIChUcmV2acOxbyki?= <mail@3v1n0.net>
|
||||||
|
Date: Wed, 2 Dec 2020 14:58:09 +0000
|
||||||
|
Subject: fp-print: Don't byte-swap two times the NBIS array contents
|
||||||
|
|
||||||
|
When serializing an image print in big endian machine we ended up
|
||||||
|
swapping the arrays contents two times, first when adding the values and
|
||||||
|
eventually when calling g_variant_byteswap which already handles this
|
||||||
|
properly.
|
||||||
|
|
||||||
|
With this, we get the test passing into s390x.
|
||||||
|
|
||||||
|
Fixes: #236
|
||||||
|
|
||||||
|
Origin: https://gitlab.freedesktop.org/libfprint/libfprint/-/commit/de271a0
|
||||||
|
---
|
||||||
|
libfprint/fp-print.c | 23 ++++++-----------------
|
||||||
|
1 file changed, 6 insertions(+), 17 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/libfprint/fp-print.c b/libfprint/fp-print.c
|
||||||
|
index c485975..70775c9 100644
|
||||||
|
--- a/libfprint/fp-print.c
|
||||||
|
+++ b/libfprint/fp-print.c
|
||||||
|
@@ -667,36 +667,25 @@ fp_print_serialize (FpPrint *print,
|
||||||
|
for (i = 0; i < print->prints->len; i++)
|
||||||
|
{
|
||||||
|
struct xyt_struct *xyt = g_ptr_array_index (print->prints, i);
|
||||||
|
- gint j;
|
||||||
|
- gint32 *col = g_new (gint32, xyt->nrows);
|
||||||
|
|
||||||
|
g_variant_builder_open (&nested, G_VARIANT_TYPE ("(aiaiai)"));
|
||||||
|
|
||||||
|
- for (j = 0; j < xyt->nrows; j++)
|
||||||
|
- col[j] = GINT32_TO_LE (xyt->xcol[j]);
|
||||||
|
g_variant_builder_add_value (&nested,
|
||||||
|
g_variant_new_fixed_array (G_VARIANT_TYPE_INT32,
|
||||||
|
- col,
|
||||||
|
+ xyt->xcol,
|
||||||
|
xyt->nrows,
|
||||||
|
- sizeof (col[0])));
|
||||||
|
-
|
||||||
|
- for (j = 0; j < xyt->nrows; j++)
|
||||||
|
- col[j] = GINT32_TO_LE (xyt->ycol[j]);
|
||||||
|
+ sizeof (xyt->xcol[0])));
|
||||||
|
g_variant_builder_add_value (&nested,
|
||||||
|
g_variant_new_fixed_array (G_VARIANT_TYPE_INT32,
|
||||||
|
- col,
|
||||||
|
+ xyt->ycol,
|
||||||
|
xyt->nrows,
|
||||||
|
- sizeof (col[0])));
|
||||||
|
-
|
||||||
|
- for (j = 0; j < xyt->nrows; j++)
|
||||||
|
- col[j] = GINT32_TO_LE (xyt->thetacol[j]);
|
||||||
|
+ sizeof (xyt->ycol[0])));
|
||||||
|
g_variant_builder_add_value (&nested,
|
||||||
|
g_variant_new_fixed_array (G_VARIANT_TYPE_INT32,
|
||||||
|
- col,
|
||||||
|
+ xyt->thetacol,
|
||||||
|
xyt->nrows,
|
||||||
|
- sizeof (col[0])));
|
||||||
|
+ sizeof (xyt->thetacol[0])));
|
||||||
|
g_variant_builder_close (&nested);
|
||||||
|
- g_free (col);
|
||||||
|
}
|
||||||
|
|
||||||
|
g_variant_builder_close (&nested);
|
||||||
Vendored
+1
@@ -1,3 +1,4 @@
|
|||||||
debian/Tweak-the-udev-rules-creator-for-Debian-usage.patch
|
debian/Tweak-the-udev-rules-creator-for-Debian-usage.patch
|
||||||
fpi-device-Return-proper-type-on-identification-success.patch
|
fpi-device-Return-proper-type-on-identification-success.patch
|
||||||
test-fpi-device-Always-check-the-return-values-for-the-AP.patch
|
test-fpi-device-Always-check-the-return-values-for-the-AP.patch
|
||||||
|
fp-print-Don-t-byte-swap-two-times-the-NBIS-array-content.patch
|
||||||
|
|||||||
Reference in New Issue
Block a user