bug fix
authorNathan S. Evans <evans@in.tum.de>
Fri, 12 Nov 2010 12:44:45 +0000 (12:44 +0000)
committerNathan S. Evans <evans@in.tum.de>
Fri, 12 Nov 2010 12:44:45 +0000 (12:44 +0000)
src/dht/gnunet-service-dht.c

index 933a208fe33dc08c15e0f25b168b8de168fffdaf..b07c25b29602bb5cccb4def848ae0b6144defb6a 100644 (file)
@@ -1112,7 +1112,7 @@ core_transmit_notify (void *cls,
 
   size_t off;
   size_t msize;
-
+  peer->th = NULL;
   if (buf == NULL)
     {
       /* client disconnected */
@@ -1125,7 +1125,6 @@ core_transmit_notify (void *cls,
   if (peer->head == NULL)
     return 0;
 
-  peer->th = NULL;
   off = 0;
   pending = peer->head;
   reply_times[reply_counter] = GNUNET_TIME_absolute_get_difference(pending->scheduled, GNUNET_TIME_absolute_get());
@@ -1523,7 +1522,7 @@ static void delete_peer (struct PeerInfo *peer,
 
   if (peer->send_task != GNUNET_SCHEDULER_NO_TASK)
     GNUNET_SCHEDULER_cancel(peer->send_task);
-  if (peer->th != NULL)
+  if ((peer->th != NULL) && (coreAPI != NULL))
     GNUNET_CORE_notify_transmit_ready_cancel(peer->th);
 
   pos = peer->head;