d/p/lib-Add-accessor-for-minutia-coordinates.patch: Add a way to access minutia coordinates, this will help to fix ftbfs in fprint_demo

In reality a API breakage was introduced in a previous version and even
if it's not fixing it completely it reintroduce the same
functionalities.
This commit is contained in:
Laurent Bigonville
2018-10-10 17:04:25 +02:00
parent bef704b74e
commit 388666f5c0
3 changed files with 77 additions and 0 deletions
+1
View File
@@ -58,6 +58,7 @@ libfprint.so.0 libfprint0 #MINVER#
fp_img_save_to_file@Base 1:0.4.0 fp_img_save_to_file@Base 1:0.4.0
fp_img_standardize@Base 1:0.4.0 fp_img_standardize@Base 1:0.4.0
fp_init@Base 1:0.4.0 fp_init@Base 1:0.4.0
fp_minutia_get_coords@Base 1:0.8.2-3~
fp_print_data_delete@Base 1:0.4.0 fp_print_data_delete@Base 1:0.4.0
fp_print_data_free@Base 1:0.4.0 fp_print_data_free@Base 1:0.4.0
fp_print_data_from_data@Base 1:0.4.0 fp_print_data_from_data@Base 1:0.4.0
@@ -0,0 +1,75 @@
From: Bastien Nocera <hadess@hadess.net>
Date: Mon, 8 Oct 2018 16:43:28 +0200
Subject: lib: Add accessor for minutia coordinates
Add fp_minutia_get_coords() so that debugging applications can show the
detected minutiae along with the captured image.
This will also help fix the positively ancient fprint_demo.
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=907470
---
doc/libfprint-sections.txt | 1 +
libfprint/fprint.h | 1 +
libfprint/img.c | 24 ++++++++++++++++++++++++
3 files changed, 26 insertions(+)
diff --git a/doc/libfprint-sections.txt b/doc/libfprint-sections.txt
index 77cb0c3..67616cc 100644
--- a/doc/libfprint-sections.txt
+++ b/doc/libfprint-sections.txt
@@ -129,6 +129,7 @@ fp_img_save_to_file
fp_img_standardize
fp_img_binarize
fp_img_get_minutiae
+fp_minutia_get_coords
</SECTION>
<SECTION>
diff --git a/libfprint/fprint.h b/libfprint/fprint.h
index be94a54..0efd875 100644
--- a/libfprint/fprint.h
+++ b/libfprint/fprint.h
@@ -295,6 +295,7 @@ int fp_img_save_to_file(struct fp_img *img, char *path);
void fp_img_standardize(struct fp_img *img);
struct fp_img *fp_img_binarize(struct fp_img *img);
struct fp_minutia **fp_img_get_minutiae(struct fp_img *img, int *nr_minutiae);
+int fp_minutia_get_coords(struct fp_minutia *minutia, int *coord_x, int *coord_y);
void fp_img_free(struct fp_img *img);
/* Polling and timing */
diff --git a/libfprint/img.c b/libfprint/img.c
index 2f195af..4b2476f 100644
--- a/libfprint/img.c
+++ b/libfprint/img.c
@@ -561,6 +561,30 @@ fpi_imgdev_get_dev(struct fp_img_dev *imgdev)
return imgdev->dev;
}
+/**
+ * fp_minutia_get_coords:
+ * @minutia: a struct #fp_minutia
+ * @x: the return variable for the X coordinate of the minutia
+ * @y: the return variable for the Y coordinate of the minutia
+ *
+ * Sets @x and @y to be the coordinates of the detected minutia, so it
+ * can be presented in a more verbose user interface. This is usually only
+ * used for debugging purposes.
+ *
+ * Returns: 0 on success, -1 on error.
+ */
+API_EXPORTED int fp_minutia_get_coords(struct fp_minutia *minutia, int *coord_x, int *coord_y)
+{
+ g_return_val_if_fail (minutia != NULL, -1);
+ g_return_val_if_fail (coord_x != NULL, -1);
+ g_return_val_if_fail (coord_y != NULL, -1);
+
+ *coord_x = minutia->x;
+ *coord_y = minutia->y;
+
+ return 0;
+}
+
enum fp_imgdev_enroll_state
fpi_imgdev_get_action_state(struct fp_img_dev *imgdev)
{
+1
View File
@@ -1,5 +1,6 @@
# Upstream backports # Upstream backports
fix_ftbfs_meson.patch fix_ftbfs_meson.patch
lib-Add-accessor-for-minutia-coordinates.patch
# Debian specifics # Debian specifics
kFreeBSD_FTBFS_add_ETIME_definition.patch kFreeBSD_FTBFS_add_ETIME_definition.patch