diff options
-rw-r--r-- | src/util/crypto_ecc.c | 3 | ||||
-rw-r--r-- | src/util/helper.c | 12 |
2 files changed, 12 insertions, 3 deletions
diff --git a/src/util/crypto_ecc.c b/src/util/crypto_ecc.c index 79c003b8e..b5a057aed 100644 --- a/src/util/crypto_ecc.c +++ b/src/util/crypto_ecc.c | |||
@@ -745,7 +745,8 @@ GNUNET_CRYPTO_ecc_key_create_stop (struct GNUNET_CRYPTO_EccKeyGenerationContext | |||
745 | 745 | ||
746 | if (NULL != gc->filename) | 746 | if (NULL != gc->filename) |
747 | { | 747 | { |
748 | if (0 != UNLINK (gc->filename)) | 748 | if ( (0 != UNLINK (gc->filename)) && |
749 | (ENOENT != errno) ) | ||
749 | GNUNET_log_strerror_file (GNUNET_ERROR_TYPE_WARNING, "unlink", gc->filename); | 750 | GNUNET_log_strerror_file (GNUNET_ERROR_TYPE_WARNING, "unlink", gc->filename); |
750 | GNUNET_free (gc->filename); | 751 | GNUNET_free (gc->filename); |
751 | } | 752 | } |
diff --git a/src/util/helper.c b/src/util/helper.c index c89f1ecb5..4187b819c 100644 --- a/src/util/helper.c +++ b/src/util/helper.c | |||
@@ -276,8 +276,16 @@ GNUNET_HELPER_wait (struct GNUNET_HELPER_Handle *h) | |||
276 | static void | 276 | static void |
277 | stop_helper (struct GNUNET_HELPER_Handle *h, int soft_kill) | 277 | stop_helper (struct GNUNET_HELPER_Handle *h, int soft_kill) |
278 | { | 278 | { |
279 | GNUNET_break (GNUNET_OK == GNUNET_HELPER_kill (h, soft_kill)); | 279 | if (GNUNET_SCHEDULER_NO_TASK != h->restart_task) |
280 | GNUNET_break (GNUNET_OK == GNUNET_HELPER_wait (h)); | 280 | { |
281 | GNUNET_SCHEDULER_cancel (h->restart_task); | ||
282 | h->restart_task = GNUNET_SCHEDULER_NO_TASK; | ||
283 | } | ||
284 | else | ||
285 | { | ||
286 | GNUNET_break (GNUNET_OK == GNUNET_HELPER_kill (h, soft_kill)); | ||
287 | GNUNET_break (GNUNET_OK == GNUNET_HELPER_wait (h)); | ||
288 | } | ||
281 | } | 289 | } |
282 | 290 | ||
283 | 291 | ||