From 0b699408764f0d048b0d74c8f21c68bec9b4603c Mon Sep 17 00:00:00 2001 From: YAMAMOTO Takashi Date: Tue, 11 May 2021 14:05:02 +0900 Subject: [PATCH] flood_fill_line: call user callback as well --- lib/identify.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/identify.c b/lib/identify.c index f42fbea..2377296 100644 --- a/lib/identify.c +++ b/lib/identify.c @@ -126,6 +126,7 @@ typedef void (*span_func_t)(void *user_data, int y, int left, int right); static void flood_fill_line(struct quirc *q, int x, int y, int from, int to, + span_func_t func, void *user_data, int *leftp, int *rightp) { quirc_pixel_t *row; @@ -152,6 +153,9 @@ static void flood_fill_line(struct quirc *q, int x, int y, /* Return the processed range */ *leftp = left; *rightp = right; + + if (func) + func(user_data, y, left, right); } static void flood_fill_seed(struct quirc *q, @@ -187,11 +191,9 @@ call: */ /* Fill the extent */ - flood_fill_line(q, vars->left_up, vars->y, from, to, &vars->left_up, - &vars->right); - - if (func) - func(user_data, vars->y, vars->left_up, vars->right); + flood_fill_line(q, vars->left_up, vars->y, from, to, + func, user_data, + &vars->left_up, &vars->right); if (vars == last_vars) { return;