gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r15163 - gnunet/src/fs


From: gnunet
Subject: [GNUnet-SVN] r15163 - gnunet/src/fs
Date: Thu, 5 May 2011 16:09:06 +0200

Author: grothoff
Date: 2011-05-05 16:09:06 +0200 (Thu, 05 May 2011)
New Revision: 15163

Modified:
   gnunet/src/fs/fs_test_lib.c
Log:
proper shutdown

Modified: gnunet/src/fs/fs_test_lib.c
===================================================================
--- gnunet/src/fs/fs_test_lib.c 2011-05-05 13:52:09 UTC (rev 15162)
+++ gnunet/src/fs/fs_test_lib.c 2011-05-05 14:09:06 UTC (rev 15163)
@@ -528,6 +528,7 @@
   unsigned int i;
   struct GNUNET_TESTING_PeerGroup *pg;
   struct GNUNET_CONFIGURATION_Handle *gcfg;
+  struct GNUNET_FS_TestDaemon *daemon;
 
   GNUNET_assert (total > 0);
   GNUNET_assert (daemons[0] != NULL);
@@ -535,18 +536,34 @@
   gcfg = daemons[0]->gcfg;
   for (i=0;i<total;i++)
     {
-      if (daemons[i]->fs != NULL)
-       GNUNET_FS_stop (daemons[i]->fs);
-      if (daemons[i]->cfg != NULL)
-       GNUNET_CONFIGURATION_destroy (daemons[i]->cfg);
-      if (NULL != daemons[i]->publish_tmp_file)
+      daemon = daemons[i];
+      if (daemon->download_timeout_task != GNUNET_SCHEDULER_NO_TASK)
        {
+         GNUNET_SCHEDULER_cancel (daemon->download_timeout_task);
+         daemon->download_timeout_task = GNUNET_SCHEDULER_NO_TASK;
+       }
+      if (daemon->publish_timeout_task != GNUNET_SCHEDULER_NO_TASK)
+       {
+         GNUNET_SCHEDULER_cancel (daemon->publish_timeout_task);
+         daemon->publish_timeout_task = GNUNET_SCHEDULER_NO_TASK;
+       }
+      if (NULL != daemon->download_context)
+       {
+         GNUNET_FS_download_stop (daemon->download_context, GNUNET_YES);
+         daemon->download_context = NULL;
+       }
+      if (daemon->fs != NULL)
+       GNUNET_FS_stop (daemon->fs);
+      if (daemon->cfg != NULL)
+       GNUNET_CONFIGURATION_destroy (daemon->cfg);
+      if (NULL != daemon->publish_tmp_file)
+       {
          GNUNET_break (GNUNET_OK ==
-                       GNUNET_DISK_directory_remove 
(daemons[i]->publish_tmp_file));
-         GNUNET_free (daemons[i]->publish_tmp_file);
-         daemons[i]->publish_tmp_file = NULL;
+                       GNUNET_DISK_directory_remove 
(daemon->publish_tmp_file));
+         GNUNET_free (daemon->publish_tmp_file);
+         daemon->publish_tmp_file = NULL;
        }
-      GNUNET_free (daemons[i]);
+      GNUNET_free (daemon);
       daemons[i] = NULL;
     }  
   GNUNET_TESTING_daemons_stop (pg, 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]