summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/util/crypto_ecc.c3
-rw-r--r--src/util/helper.c12
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)
276static void 276static void
277stop_helper (struct GNUNET_HELPER_Handle *h, int soft_kill) 277stop_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