merchant

Merchant backend to process payments, run by merchants
Log | Files | Refs | Submodules | README | LICENSE

commit d50f371df8f6232a5e138207f09bbf963d76ee2c
parent 0954834570ae9b16adc69a79dd54fbd6fe048556
Author: Christian Grothoff <christian@grothoff.org>
Date:   Thu,  9 Apr 2026 16:36:23 +0200

possible fix for #11346

Diffstat:
Msrc/backend/taler-merchant-httpd_get-private-kyc.c | 9+++++++++
1 file changed, 9 insertions(+), 0 deletions(-)

diff --git a/src/backend/taler-merchant-httpd_get-private-kyc.c b/src/backend/taler-merchant-httpd_get-private-kyc.c @@ -298,6 +298,11 @@ struct KycContext */ bool return_immediately; + /** + * Are we currently still iterating over the database and + * thus must not yet respond? + */ + bool in_db; }; @@ -973,6 +978,8 @@ ekr_finished (struct ExchangeKycRequest *ekr) ekr_cleanup (ekr); if (NULL != kc->exchange_pending_head) return; /* wait for more */ + if (kc->in_db) + return; kc_respond (kc); } @@ -1506,6 +1513,7 @@ get_instances_ID_kyc ( from previous runs first */ GNUNET_break (0 == json_array_clear (kc->kycs_data)); + kc->in_db = true; qs = TMH_db->account_kyc_get_status ( TMH_db->cls, mi->settings.id, @@ -1515,6 +1523,7 @@ get_instances_ID_kyc ( kc->exchange_url, &kyc_status_cb, kc); + kc->in_db = false; GNUNET_log (GNUNET_ERROR_TYPE_INFO, "account_kyc_get_status returned %d records\n", (int) qs);