gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r14152 - gnunet/src/dht


From: gnunet
Subject: [GNUnet-SVN] r14152 - gnunet/src/dht
Date: Wed, 12 Jan 2011 09:37:30 +0100

Author: grothoff
Date: 2011-01-12 09:37:30 +0100 (Wed, 12 Jan 2011)
New Revision: 14152

Modified:
   gnunet/src/dht/gnunet-service-dht.c
Log:
fix

Modified: gnunet/src/dht/gnunet-service-dht.c
===================================================================
--- gnunet/src/dht/gnunet-service-dht.c 2011-01-11 23:42:47 UTC (rev 14151)
+++ gnunet/src/dht/gnunet-service-dht.c 2011-01-12 08:37:30 UTC (rev 14152)
@@ -3590,7 +3590,10 @@
           GNUNET_free (record);
         }
       if (source_info->delete_task != GNUNET_SCHEDULER_NO_TASK)
-        GNUNET_SCHEDULER_cancel (source_info->delete_task);
+       {
+         GNUNET_SCHEDULER_cancel (source_info->delete_task);
+         source_info->delete_task = GNUNET_SCHEDULER_NO_TASK;
+       }
       if (source_info->find_peers_responded != NULL)
         GNUNET_CONTAINER_bloomfilter_free (source_info->find_peers_responded);
       GNUNET_free (source_info);
@@ -4048,8 +4051,10 @@
       GNUNET_CONTAINER_DLL_remove (record->head, record->tail, pos);
       GNUNET_CONTAINER_heap_remove_node (forward_list.minHeap, pos->hnode);
       if (pos->delete_task != GNUNET_SCHEDULER_NO_TASK)
-        GNUNET_SCHEDULER_cancel (pos->delete_task);
-
+       {
+         GNUNET_SCHEDULER_cancel (pos->delete_task);
+         pos->delete_task = GNUNET_SCHEDULER_NO_TASK;
+       }
       if (pos->find_peers_responded != NULL)
         GNUNET_CONTAINER_bloomfilter_free (pos->find_peers_responded);
       GNUNET_free (pos);
@@ -4586,10 +4591,9 @@
           /* If the client is non-null (local request) and the client matches 
the requesting client, remove the entry. */
           if ((pos->client != NULL) && (pos->client->client_handle == client))
             {
-              GNUNET_SCHEDULER_cancel (pos->delete_task);
-              pos->delete_task = GNUNET_SCHEDULER_NO_TASK;
-              GNUNET_SCHEDULER_add_continuation (&remove_forward_entry, pos,
-                                                 
GNUNET_SCHEDULER_REASON_PREREQ_DONE);
+             if (pos->delete_task != GNUNET_SCHEDULER_NO_TASK)
+               GNUNET_SCHEDULER_cancel (pos->delete_task);
+              pos->delete_task = GNUNET_SCHEDULER_add_now 
(&remove_forward_entry, pos);
             }
           pos = pos->next;
         }




reply via email to

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