gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r19892 - gnunet/src/mesh


From: gnunet
Subject: [GNUnet-SVN] r19892 - gnunet/src/mesh
Date: Tue, 21 Feb 2012 13:31:01 +0100

Author: bartpolot
Date: 2012-02-21 13:31:01 +0100 (Tue, 21 Feb 2012)
New Revision: 19892

Modified:
   gnunet/src/mesh/test_mesh_local_1.c
Log:
- Avoid calling shutdown twice

Modified: gnunet/src/mesh/test_mesh_local_1.c
===================================================================
--- gnunet/src/mesh/test_mesh_local_1.c 2012-02-21 12:10:38 UTC (rev 19891)
+++ gnunet/src/mesh/test_mesh_local_1.c 2012-02-21 12:31:01 UTC (rev 19892)
@@ -42,6 +42,7 @@
 static int result;
 static GNUNET_SCHEDULER_TaskIdentifier abort_task;
 static GNUNET_SCHEDULER_TaskIdentifier test_task;
+static GNUNET_SCHEDULER_TaskIdentifier shutdown_task;
 
 
 /**
@@ -93,6 +94,11 @@
   }
   result = GNUNET_SYSERR;
   abort_task = 0;
+  if (GNUNET_SCHEDULER_NO_TASK != shutdown_task)
+  {
+    GNUNET_SCHEDULER_cancel (shutdown_task);
+    shutdown_task = GNUNET_SCHEDULER_NO_TASK;
+  }
   do_shutdown (cls, tc);
 }
 
@@ -116,9 +122,12 @@
                const struct GNUNET_ATS_Information *atsi)
 {
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Data callback\n");
-  GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply
-                                (GNUNET_TIME_UNIT_SECONDS, 2), &do_shutdown,
-                                NULL);
+  if (GNUNET_SCHEDULER_NO_TASK != shutdown_task)
+    GNUNET_SCHEDULER_cancel (shutdown_task);
+  shutdown_task =
+    GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply
+                                  (GNUNET_TIME_UNIT_SECONDS, 2), &do_shutdown,
+                                  NULL);
   return GNUNET_OK;
 }
 
@@ -187,7 +196,10 @@
                const struct GNUNET_ATS_Information *atsi)
 {
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: peer connected\n");
-  GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS, &do_shutdown, NULL);
+  if (GNUNET_SCHEDULER_NO_TASK != shutdown_task)
+    GNUNET_SCHEDULER_cancel(shutdown_task);
+  shutdown_task =  GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS,
+                                                 &do_shutdown, NULL);
 }
 
 




reply via email to

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