diff options
author | Christian Grothoff <christian@grothoff.org> | 2023-11-12 16:17:55 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2023-11-12 16:17:55 +0100 |
commit | 0255fb4a2357392f1676e3a48d5dd81168f2f9d1 (patch) | |
tree | 79bb45f6c6753e247598895e342269c2d48a5bd8 /src | |
parent | 622eb624b350a89918f92fc1084b67273e5e9eb4 (diff) | |
download | exchange-0255fb4a2357392f1676e3a48d5dd81168f2f9d1.tar.gz exchange-0255fb4a2357392f1676e3a48d5dd81168f2f9d1.tar.bz2 exchange-0255fb4a2357392f1676e3a48d5dd81168f2f9d1.zip |
handle helper errors better
Diffstat (limited to 'src')
-rw-r--r-- | src/kyclogic/plugin_kyclogic_kycaid.c | 6 | ||||
-rw-r--r-- | src/util/conversion.c | 15 |
2 files changed, 9 insertions, 12 deletions
diff --git a/src/kyclogic/plugin_kyclogic_kycaid.c b/src/kyclogic/plugin_kyclogic_kycaid.c index a8d6901c8..10f9658fe 100644 --- a/src/kyclogic/plugin_kyclogic_kycaid.c +++ b/src/kyclogic/plugin_kyclogic_kycaid.c @@ -822,7 +822,7 @@ webhook_conversion_cb (void *cls, struct MHD_Response *resp; wh->econ = NULL; - if ( (0 == code) || + if ( (0 == code) && (NULL == result) ) { /* No result, but *our helper* was OK => bad input */ @@ -852,7 +852,9 @@ webhook_conversion_cb (void *cls, if (NULL == result) { /* Failure in our helper */ - GNUNET_break (0); + GNUNET_log (GNUNET_ERROR_TYPE_WARNING, + "Helper exited with status code %d\n", + (int) code); json_dumpf (wh->json_response, stderr, JSON_INDENT (2)); diff --git a/src/util/conversion.c b/src/util/conversion.c index 504bb5ac0..a7bc63789 100644 --- a/src/util/conversion.c +++ b/src/util/conversion.c @@ -255,11 +255,6 @@ child_done_cb (void *cls, json_error_t err; ec->cwh = NULL; - GNUNET_log (GNUNET_ERROR_TYPE_INFO, - "Conversion helper exited with status %d and code %llu after outputting %llu bytes of data\n", - (int) type, - (unsigned long long) exit_code, - (unsigned long long) ec->read_pos); if (NULL != ec->read_task) { GNUNET_SCHEDULER_cancel (ec->read_task); @@ -267,11 +262,11 @@ child_done_cb (void *cls, the read buffer. So drain it now, just in case. */ read_cb (ec); } - if (NULL != ec->read_task) - { - GNUNET_SCHEDULER_cancel (ec->read_task); - ec->read_task = NULL; - } + GNUNET_log (GNUNET_ERROR_TYPE_INFO, + "Conversion helper exited with status %d and code %llu after outputting %llu bytes of data\n", + (int) type, + (unsigned long long) exit_code, + (unsigned long long) ec->read_pos); GNUNET_OS_process_destroy (ec->helper); ec->helper = NULL; if (0 != ec->read_pos) |