Commit d3b41472 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

Dinar in bug report #1086121, found a file handle leak when a multipart

formpost (including a file upload part) was aborted before the whole file was
sent.
parent 38181fbc
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -7,6 +7,11 @@
                                  Changelog


Daniel (16 December 2004)
- Dinar in bug report #1086121, found a file handle leak when a multipart
  formpost (including a file upload part) was aborted before the whole file
  was sent.

Daniel (15 December 2004)
- Tom Lee found out that globbing of strings with backslashes didn't work as
  you'd expect. Backslashes are such a central part of windows file names that
+2 −1
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ This release includes the following changes:

This release includes the following bugfixes:

 o file handle leak in aborted multipart formpost file upload
 o -T upload multiple files with backslashes in file names
 o modified credentials between two requests on a persistent http connection
 o large file file:// resumes on Windows
@@ -71,6 +72,6 @@ advice from friends like these:
 Tim Sneddon, Ian Gulliver, Jean-Philippe Barrette-LaPierre, Jeff Phillips,
 Wojciech Zwiefka, David Phillips, Reinout van Schouwen, Maurice Barnum,
 Richard Atterer, Rene Bernhardt, Matt Veenstra, Bryan Henderson, Ton Voon,
 Kai Sommerfeld, David Byron, Harshal Pradhan, Tom Lee
 Kai Sommerfeld, David Byron, Harshal Pradhan, Tom Lee, Dinar

        Thanks! (and sorry if I forgot to mention someone)
+3 −0
Original line number Diff line number Diff line
@@ -1299,6 +1299,9 @@ CURLcode Curl_http_done(struct connectdata *conn,
    conn->bytecount = http->readbytecount + http->writebytecount;

    Curl_formclean(http->sendit); /* Now free that whole lot */
    if(http->form.fp)
      /* a file being uploaded was left opened, close it! */
      fclose(http->form.fp);
  }
  else if(HTTPREQ_PUT == data->set.httpreq)
    conn->bytecount = http->readbytecount + http->writebytecount;
+7 −2
Original line number Diff line number Diff line
@@ -357,10 +357,15 @@ sub runhttpserver {
    my $data;

    if($res && $verbose) {
        print "RUN: curl command returned $res\nRUN: ";
        open(ERR, "<log/verifystderr");
        print <ERR>;
        my @e = <ERR>;
        close(ERR);
        print "RUN: curl command returned $res\n";
        for(@e) {
            if($_ !~ /^([ \t]*)$/) {
                print "RUN: $_";
            }
        }
    }
    open(FILE, "<log/verifiedserver");
    my @file=<FILE>;