]> git.ipfire.org Git - thirdparty/ntp.git/commitdiff
more full_recvbuf cleanup
authorHarlan Stenn <stenn@ntp.org>
Tue, 13 Dec 2005 10:22:27 +0000 (05:22 -0500)
committerHarlan Stenn <stenn@ntp.org>
Tue, 13 Dec 2005 10:22:27 +0000 (05:22 -0500)
bk: 439ea0e3lQi7UjfCUdqzvyXFp7Xvjw

libntp/recvbuff.c
ntpd/ntpd.c

index 5d0a7ba6184f196d66e76e84b751c2d3da57525e..965246324db0c9c6dc069366b0d8cdac01f7e210 100644 (file)
@@ -185,6 +185,8 @@ get_full_recv_buffer(void)
        }
        else
        {
+               if (full_recvbufs)
+                   msyslog(LOG_ERR, "get_full_recv_buffer: full_list is empty but full_recvbufs is %lu!", full_recvbufs);
                /*
                 * Make sure we reset the full count to 0
                 */
index 4474c0d4e04a03a55913ece2eeff9f76fa12e6a5..992e4c6946523b8acfac9443e2f8fb8c5dc4fb8c 100644 (file)
@@ -936,18 +936,17 @@ getgroup:
 
 #endif /* HAVE_IO_COMPLETION_PORT */
 
-               if (full_recvbuffs())
+               while (full_recvbuffs())
                {
                        /*
                         * Call the data procedure to handle each received
                         * packet.
                         */
                        rbuf = get_full_recv_buffer();
-                       while (rbuf != NULL)
+                       if (rbuf != NULL)       /* This should always be true */
                        {
                                (rbuf->receiver)(rbuf);
                                freerecvbuf(rbuf);
-                               rbuf = get_full_recv_buffer();
                        }
                }