Fix a bug that caused an assert to pop when an async file descriptor
robs [Tue, 19 Feb 2002 00:45:54 +0000 (00:45 +0000)]
was numbered greater than 16. Kevin Eye [eye@buffalo.edu]

README
libfcgi/os_unix.c

diff --git a/README b/README
index b6d5f51..e98662f 100755 (executable)
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
 FastCGI Developer's Kit README
 ------------------------------
 
-    $Id: README,v 1.14 2002/02/01 19:43:28 robs Exp $
+    $Id: README,v 1.15 2002/02/19 00:45:54 robs Exp $
     Copyright (c) 1996 Open Market, Inc.
     See the file "LICENSE.TERMS" for information on usage and redistribution
     of this file, and for a DISCLAIMER OF ALL WARRANTIES.
@@ -32,6 +32,9 @@ on http://fastcgi.com/.
 2.2.3
 -----
 
+ *) Fix a bug that caused an assert to pop when an async file descriptor was
+    numbered greater than 16. Kevin Eye [eye@buffalo.edu]
+
  *) Update the echo-cpp example to show the restoral of the original
     streambufs.  Trub, Vladimir [vtrub@purolator.com]
 
index b8c0a1b..c17f4a3 100755 (executable)
@@ -17,7 +17,7 @@
  */
 
 #ifndef lint
-static const char rcsid[] = "$Id: os_unix.c,v 1.35 2002/01/03 15:12:50 robs Exp $";
+static const char rcsid[] = "$Id: os_unix.c,v 1.36 2002/02/19 00:45:55 robs Exp $";
 #endif /* not lint */
 
 #include "fcgi_config.h"
@@ -638,7 +638,7 @@ int OS_AsyncRead(int fd, int offset, void *buf, int len,
     if(fd > maxFd)
         maxFd = fd;
 
-    if(index >= asyncIoTableSize) {
+    while (index >= asyncIoTableSize) {
         GrowAsyncTable();
     }
 
@@ -687,7 +687,7 @@ int OS_AsyncWrite(int fd, int offset, void *buf, int len,
     if(fd > maxFd)
         maxFd = fd;
 
-    if(index >= asyncIoTableSize) {
+    while (index >= asyncIoTableSize) {
         GrowAsyncTable();
     }