From 06a5c70f4d0ebd31f267e6a18d5e8524871d89d4 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 17 Aug 2004 12:00:39 +0000 Subject: Kjetil Jacobsen reported an open file leak in file:// transfers of empty files. --- lib/file.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'lib') diff --git a/lib/file.c b/lib/file.c index 20cb918eb..57201d417 100644 --- a/lib/file.c +++ b/lib/file.c @@ -177,6 +177,9 @@ CURLcode Curl_file_done(struct connectdata *conn, (void)status; /* not used */ Curl_safefree(file->freepath); + if(file->fd != -1) + close(file->fd); + return CURLE_OK; } @@ -227,7 +230,7 @@ static CURLcode file_upload(struct connectdata *conn) int readcount; res = Curl_fillreadbuffer(conn, BUFSIZE, &readcount); if(res) - return res; + break; nread = (size_t)readcount; @@ -383,8 +386,7 @@ CURLcode Curl_file(struct connectdata *conn) if(Curl_pgrsUpdate(conn)) res = CURLE_ABORTED_BY_CALLBACK; - close(fd); - return res; } + #endif -- cgit v1.2.3