Index: docs/libcurl/curl_multi_fdset.3
===================================================================
RCS file: /cvsroot/curl/curl/docs/libcurl/curl_multi_fdset.3,v
retrieving revision 1.8
diff -u -r1.8 curl_multi_fdset.3
--- docs/libcurl/curl_multi_fdset.3	15 Apr 2004 15:05:12 -0000	1.8
+++ docs/libcurl/curl_multi_fdset.3	11 Jan 2005 19:52:22 -0000
@@ -16,13 +16,9 @@
 .SH DESCRIPTION
 This function extracts file descriptor information from a given multi_handle.
 libcurl returns its fd_set sets. The application can use these to select()
-on. The \fIcurl_multi_perform(3)\fI function should be called as soon as one
+on. The \fIcurl_multi_perform(3)\fP function should be called as soon as one
 of them are ready to be read from or written to.
 
-NOTE that once this call is made, you must not remove the sets you point to,
-as libcurl will need to be able to read them. It needs them after select()
-calls, to know if certain sockets are readable or writable.
-
 You should also be aware that when doing select(), you should consider using a
 rather small (single-digit number of seconds) timeout and call
 \fIcurl_multi_perform\fP regularly - even if no activity has been seen on the
Index: lib/transfer.c
===================================================================
RCS file: /cvsroot/curl/curl/lib/transfer.c,v
retrieving revision 1.262
diff -u -r1.262 transfer.c
--- lib/transfer.c	11 Jan 2005 14:00:46 -0000	1.262
+++ lib/transfer.c	11 Jan 2005 19:52:23 -0000
@@ -464,7 +464,6 @@
 
                   k->write_after_100_header = FALSE;
                   k->keepon |= KEEP_WRITE;
-                  k->wkeepfd = k->writefd;
                 }
               }
               else
@@ -1192,7 +1191,6 @@
                  go into the Expect: 100 state and await such a header */
               k->wait100_after_headers = FALSE; /* headers sent */
               k->write_after_100_header = TRUE; /* wait for the header */
-              k->wkeepfd = k->writefd;          /* set the keeper variable */
               k->keepon &= ~KEEP_WRITE;         /* disable writing */
               k->start100 = Curl_tvnow();       /* timeout count starts now */
               didwhat &= ~KEEP_WRITE;  /* we didn't write anything actually */
@@ -1336,7 +1334,6 @@
         /* we've waited long enough, continue anyway */
         k->write_after_100_header = FALSE;
         k->keepon |= KEEP_WRITE;
-        k->wkeepfd = k->writefd;
       }
     }
   }
@@ -1463,12 +1460,6 @@
         k->keepon |= KEEP_WRITE;
       }
     }
-
-    /* get these in backup variables to be able to restore them on each lap in
-       the select() loop */
-    k->rkeepfd = k->readfd;
-    k->wkeepfd = k->writefd;
-
   }
 
   return CURLE_OK;
@@ -1491,7 +1482,6 @@
   if(conn->keep.keepon & KEEP_READ) {
     FD_SET(conn->sockfd, read_fd_set);
     *max_fd = conn->sockfd;
-    conn->keep.readfdp = read_fd_set; /* store the address of the set */
   }
   if(conn->keep.keepon & KEEP_WRITE) {
     FD_SET(conn->writesockfd, write_fd_set);
@@ -1500,7 +1490,6 @@
        to compare it nicely */
     if((int)conn->writesockfd > *max_fd)
       *max_fd = conn->writesockfd;
-    conn->keep.writefdp = write_fd_set; /* store the address of the set */
   }
   /* we don't use exceptions, only touch that one to prevent compiler
      warnings! */
@@ -1543,9 +1532,6 @@
   if(!conn->bits.getheader && conn->bits.no_body)
     return CURLE_OK;
 
-  k->writefdp = &k->writefd; /* store the address of the set */
-  k->readfdp = &k->readfd;   /* store the address of the set */
-
   while (!done) {
     int fd_read;
     int fd_write;
Index: lib/urldata.h
===================================================================
RCS file: /cvsroot/curl/curl/lib/urldata.h,v
retrieving revision 1.253
diff -u -r1.253 urldata.h
--- lib/urldata.h	10 Jan 2005 10:07:07 -0000	1.253
+++ lib/urldata.h	11 Jan 2005 19:52:23 -0000
@@ -410,15 +410,6 @@
   char *uploadbuf;
   curl_socket_t maxfd;
 
-  /* pointers to the actual descriptors we check */
-  fd_set *readfdp;
-  fd_set *writefdp;
-
-  /* the file descriptors to play with */
-  fd_set readfd;
-  fd_set writefd;
-  fd_set rkeepfd;
-  fd_set wkeepfd;
   int keepon;
 
   bool upload_done; /* set to TRUE when doing chunked transfer-encoding upload


