aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2005-12-01 23:42:03 +0000
committerDaniel Stenberg <daniel@haxx.se>2005-12-01 23:42:03 +0000
commit6513303498d36b08d2ae815311248ed818cf668e (patch)
treed4390e940515d2d349de45de2492b8e18dadfd9d
parent3e2a52b0342d1e4e17e6c455442c6262f742a0d5 (diff)
Jamie Newton pointed out that libcurl's file:// code would close() a zero
file descriptor if given a non-existing file.
-rw-r--r--CHANGES4
-rw-r--r--RELEASE-NOTES7
-rw-r--r--lib/file.c2
3 files changed, 9 insertions, 4 deletions
diff --git a/CHANGES b/CHANGES
index d162878a8..b1cad112b 100644
--- a/CHANGES
+++ b/CHANGES
@@ -8,6 +8,10 @@
+Daniel (2 December 2005)
+- Jamie Newton pointed out that libcurl's file:// code would close() a zero
+ file descriptor if given a non-existing file.
+
Daniel (24 November 2005)
- Doug Kaufman provided a set of patches to make curl build fine on DJGPP
again using configure.
diff --git a/RELEASE-NOTES b/RELEASE-NOTES
index 148fac0b2..f84c2c377 100644
--- a/RELEASE-NOTES
+++ b/RELEASE-NOTES
@@ -19,6 +19,7 @@ This release includes the following changes:
This release includes the following bugfixes:
+ o using file:// on non-existing files are properly handled
o builds fine on DJGPP
o CURLOPT_ERRORBUFFER is now always filled in on errors
o curl outputs error on bad --limit-rate units
@@ -51,8 +52,8 @@ This release would not have looked like this without help, code, reports and
advice from friends like these:
Dave Dribin, Bradford Bruce, Temprimus, Ofer, Dima Barsky, Amol Pattekar, Jaz
- Fresh, tommink[at]post.pl, Gisle Vanem, Nis Jorgensen, Vilmos Nebehaj,
- Dmitry Bartsevich, David Lang, Eugene Kotlyarov, Jan Kunder, Yang Tse,
- Quagmire, Albert Chin, David Shaw, Doug Kaufman, Bryan Henderson
+ Fresh, tommink[at]post.pl, Gisle Vanem, Nis Jorgensen, Vilmos Nebehaj, Dmitry
+ Bartsevich, David Lang, Eugene Kotlyarov, Jan Kunder, Yang Tse, Quagmire,
+ Albert Chin, David Shaw, Doug Kaufman, Bryan Henderson, Jamie Newton
Thanks! (and sorry if I forgot to mention someone)
diff --git a/lib/file.c b/lib/file.c
index c325a4673..dbfe81cfa 100644
--- a/lib/file.c
+++ b/lib/file.c
@@ -158,12 +158,12 @@ CURLcode Curl_file_connect(struct connectdata *conn)
#endif
file->freepath = real_path; /* free this when done */
+ file->fd = fd;
if(!conn->data->set.upload && (fd == -1)) {
failf(conn->data, "Couldn't open file %s", conn->path);
Curl_file_done(conn, CURLE_FILE_COULDNT_READ_FILE);
return CURLE_FILE_COULDNT_READ_FILE;
}
- file->fd = fd;
return CURLE_OK;
}