exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit 9b7716f9f2f8b3b4661ff07c891c8077e715062b
parent 6505f6986939a18814fc5ad7a54d5aaa5e6cbfd4
Author: Christian Grothoff <grothoff@gnunet.org>
Date:   Wed, 23 Mar 2022 05:19:09 +0100

fix #7151

Diffstat:
Msrc/testing/testing_api_cmd_change_auth.c | 19++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/src/testing/testing_api_cmd_change_auth.c b/src/testing/testing_api_cmd_change_auth.c @@ -90,6 +90,22 @@ authchange_run (void *cls, /** + * Call GNUNET_CURL_fini(). Done as a separate task to + * ensure that all of the command's cleanups have been + * executed first. See #7151. + * + * @param cls a `struct GNUNET_CURL_Context *` to clean up. + */ +static void +deferred_cleanup_cb (void *cls) +{ + struct GNUNET_CURL_Context *ctx = cls; + + GNUNET_CURL_fini (ctx); +} + + +/** * Cleanup the state from a "authchange" CMD. * * @param cls closure. @@ -104,7 +120,8 @@ authchange_cleanup (void *cls, (void) cmd; if (NULL != ss->old_ctx) { - GNUNET_CURL_fini (ss->old_ctx); + (void) GNUNET_SCHEDULER_add_now (&deferred_cleanup_cb, + ss->old_ctx); ss->old_ctx = NULL; } GNUNET_free (ss);