make very sure that we return 'done' properly when a transfer is done, as
authorDaniel Stenberg <daniel@haxx.se>
Fri, 18 Oct 2002 15:28:33 +0000 (15:28 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 18 Oct 2002 15:28:33 +0000 (15:28 +0000)
otherwise the multi interface gets problems

lib/transfer.c

index 5dcf3f28e21315148246f7eafaf5edd10cbdd50e..e90104aec156efcf70a9d7877183b12b12fb7321 100644 (file)
@@ -718,6 +718,7 @@ CURLcode Curl_readwrite(struct connectdata *conn,
               infof (data, "Follow to new URL: %s\n", conn->newurl);
               k->keepon &= ~KEEP_READ;
               FD_ZERO(&k->rkeepfd);
+              *done = TRUE;
               return CURLE_OK;
             }
             else if (conn->resume_from &&
@@ -742,6 +743,7 @@ CURLcode Curl_readwrite(struct connectdata *conn,
                   if(k->timeofdoc < data->set.timevalue) {
                     infof(data,
                           "The requested document is not new enough\n");
+                    *done = TRUE;
                     return CURLE_OK;
                   }
                   break;
@@ -749,6 +751,7 @@ CURLcode Curl_readwrite(struct connectdata *conn,
                   if(k->timeofdoc > data->set.timevalue) {
                     infof(data,
                           "The requested document is not old enough\n");
+                    *done = TRUE;
                     return CURLE_OK;
                   }
                   break;