From: hniksic Date: Fri, 7 Nov 2003 23:45:03 +0000 (-0800) Subject: [svn] Explicitly check that fd>=0 in register_extended. X-Git-Tag: v1.13~1455 X-Git-Url: http://sjero.net/git/?p=wget;a=commitdiff_plain;h=7d12ad0f36bbd08ea272bbdc7d074959fa6c126b [svn] Explicitly check that fd>=0 in register_extended. --- diff --git a/src/ChangeLog b/src/ChangeLog index 9ee108ba..c32550ec 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2003-11-08 Hrvoje Niksic + + * connect.c (register_extended): Check that fd >= 0. + 2003-11-07 Hrvoje Niksic * connect.c (LAZY_RETRIEVE_INFO): Set LAST_INFO. diff --git a/src/connect.c b/src/connect.c index c835fa92..a88e2595 100644 --- a/src/connect.c +++ b/src/connect.c @@ -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;