From 026de1dda4cffbb973a2192a017974a487907a37 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Fri, 5 Jan 2024 16:17:38 +0100 Subject: clean up webhook code a bit --- src/backend/taler-merchant-webhook.c | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) (limited to 'src/backend') diff --git a/src/backend/taler-merchant-webhook.c b/src/backend/taler-merchant-webhook.c index 99ab76d5..60ad3240 100644 --- a/src/backend/taler-merchant-webhook.c +++ b/src/backend/taler-merchant-webhook.c @@ -467,20 +467,9 @@ select_work (void *cls) return; case GNUNET_DB_STATUS_SUCCESS_NO_RESULTS: /* wait 5 min */ + /* Note: this should not even be necessary if all webhooks + use the events properly... */ rel = GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_MINUTES, 5); - if (NULL == eh) - { - struct GNUNET_DB_EventHeaderP es = { - .size = htons (sizeof (es)), - .type = htons (TALER_DBEVENT_MERCHANT_WEBHOOK_PENDING) - }; - - eh = db_plugin->event_listen (db_plugin->cls, - &es, - GNUNET_TIME_UNIT_FOREVER_REL, - &db_notify, - NULL); - } task = GNUNET_SCHEDULER_add_delayed (rel, &select_work, NULL); @@ -493,7 +482,7 @@ select_work (void *cls) } -/* +/** * First task. * * @param cls closure, NULL @@ -538,6 +527,18 @@ run (void *cls, GNUNET_SCHEDULER_shutdown (); return; } + { + struct GNUNET_DB_EventHeaderP es = { + .size = htons (sizeof (es)), + .type = htons (TALER_DBEVENT_MERCHANT_WEBHOOK_PENDING) + }; + + eh = db_plugin->event_listen (db_plugin->cls, + &es, + GNUNET_TIME_UNIT_FOREVER_REL, + &db_notify, + NULL); + } GNUNET_assert (NULL == task); task = GNUNET_SCHEDULER_add_now (&select_work, NULL); -- cgit v1.2.3