work around bogus cc warning -- for some C compilers...
authorChristian Grothoff <christian@grothoff.org>
Sat, 18 Jul 2015 13:40:19 +0000 (13:40 +0000)
committerChristian Grothoff <christian@grothoff.org>
Sat, 18 Jul 2015 13:40:19 +0000 (13:40 +0000)
src/dht/gnunet-service-dht_neighbours.c

index 49d7616dc41aa80094fbbc4395eb7f05b266fd1e..66a41bfb92c5cb79cf13a5b3aa64b79841cd5473 100644 (file)
@@ -824,17 +824,25 @@ core_transmit_notify (void *cls, size_t size, void *buf)
     memcpy (&cbuf[off], pending->msg, msize);
     off += msize;
     peer->pending_count--;
-    GNUNET_CONTAINER_DLL_remove (peer->head, peer->tail, pending);
+    GNUNET_CONTAINER_DLL_remove (peer->head, 
+                                peer->tail,
+                                pending);
     GNUNET_free (pending);
   }
-  if (peer->head != NULL)
+  if (NULL != (pending = peer->head))
   {
+    /* technically redundant, but easier to read and
+       avoids bogus gcc warning... */
+    msize = ntohs (pending->msg->size);
     peer->th =
-        GNUNET_CORE_notify_transmit_ready (core_api, GNUNET_NO,
-                                           GNUNET_CORE_PRIO_BEST_EFFORT,
-                                           GNUNET_TIME_absolute_get_remaining
-                                           (pending->timeout), &peer->id, msize,
-                                           &core_transmit_notify, peer);
+      GNUNET_CORE_notify_transmit_ready (core_api, 
+                                        GNUNET_NO,
+                                        GNUNET_CORE_PRIO_BEST_EFFORT,
+                                        GNUNET_TIME_absolute_get_remaining (pending->timeout), 
+                                        &peer->id,
+                                        msize,
+                                        &core_transmit_notify, 
+                                        peer);
     GNUNET_break (NULL != peer->th);
   }
   return off;