aboutsummaryrefslogtreecommitdiff
path: root/src/arm
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2011-09-18 07:19:47 +0000
committerChristian Grothoff <christian@grothoff.org>2011-09-18 07:19:47 +0000
commitfb44fdf83d0800e2e3e5300c3fe459bc01ec3d70 (patch)
treead94e6fb9f18cb63981c9db365b3f041a89fb62b /src/arm
parent7b0a7042bd85a5e4dd3021e0245ced21fffe634f (diff)
downloadgnunet-fb44fdf83d0800e2e3e5300c3fe459bc01ec3d70.tar.gz
gnunet-fb44fdf83d0800e2e3e5300c3fe459bc01ec3d70.zip
fixing 1767:
Diffstat (limited to 'src/arm')
-rw-r--r--src/arm/gnunet-service-arm.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/arm/gnunet-service-arm.c b/src/arm/gnunet-service-arm.c
index eb19776e6..718d90280 100644
--- a/src/arm/gnunet-service-arm.c
+++ b/src/arm/gnunet-service-arm.c
@@ -660,6 +660,7 @@ static void
660shutdown_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) 660shutdown_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
661{ 661{
662 struct ServiceList *pos; 662 struct ServiceList *pos;
663 struct ServiceList *nxt;
663 664
664#if DEBUG_ARM 665#if DEBUG_ARM
665 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, _("Stopping all services\n")); 666 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, _("Stopping all services\n"));
@@ -674,13 +675,18 @@ shutdown_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
674 pos = running_head; 675 pos = running_head;
675 while (NULL != pos) 676 while (NULL != pos)
676 { 677 {
678 nxt = pos->next;
677 if (pos->proc != NULL) 679 if (pos->proc != NULL)
678 { 680 {
679 GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Stopping service `%s'\n", pos->name); 681 GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Stopping service `%s'\n", pos->name);
680 if (0 != GNUNET_OS_process_kill (pos->proc, SIGTERM)) 682 if (0 != GNUNET_OS_process_kill (pos->proc, SIGTERM))
681 GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "kill"); 683 GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "kill");
682 } 684 }
683 pos = pos->next; 685 else
686 {
687 free_service (pos);
688 }
689 pos = nxt;
684 } 690 }
685 if (running_head == NULL) 691 if (running_head == NULL)
686 do_shutdown (); 692 do_shutdown ();