]> sjero.net Git - wget/commitdiff
[svn] Explicitly check that fd>=0 in register_extended.
authorhniksic <devnull@localhost>
Fri, 7 Nov 2003 23:45:03 +0000 (15:45 -0800)
committerhniksic <devnull@localhost>
Fri, 7 Nov 2003 23:45:03 +0000 (15:45 -0800)
src/ChangeLog
src/connect.c

index 9ee108ba5a6e864f5e2055d38f7ab7d05284e419..c32550ecc849ef0519004f59789894f86105e088 100644 (file)
@@ -1,3 +1,7 @@
+2003-11-08  Hrvoje Niksic  <hniksic@xemacs.org>
+
+       * connect.c (register_extended): Check that fd >= 0.
+
 2003-11-07  Hrvoje Niksic  <hniksic@xemacs.org>
 
        * connect.c (LAZY_RETRIEVE_INFO): Set LAST_INFO.
index c835fa92a2e3126038a69bfebb81d56b20acb8a6..a88e25954f8eddcf1ea4880cb6305e018d71d7aa 100644 (file)
@@ -628,7 +628,14 @@ void
 register_extended (int fd, xreader_t reader, xwriter_t writer,
                   xpoller_t poller, xcloser_t closer, void *ctx)
 {
-  struct extended_info *info = xnew (struct extended_info);
+  struct extended_info *info;
+
+  /* The file descriptor must be non-negative to be registered.
+     Negative values are ignored by xclose(), and -1 cannot be used as
+     hash key.  */
+  assert (fd >= 0);
+
+  info = xnew (struct extended_info);
   info->reader = reader;
   info->writer = writer;
   info->poller = poller;