git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH (resend) 3/3] Check return value of ftruncate call in http.c

From
Tay Ray Chuan <rctay89@gmail.com>
Date
Aug 10, 2009, 16:05 UTC
Message-ID
<20090811000506.c63eb8f1.rctay89@gmail.com>
In-Reply-To
<20090810235955.1a659e6c.rctay89@gmail.com>
From: Jeff Lasslett <jeff.lasslett@gmail.com>

In new_http_object_request(), check ftruncate() call return value and handle possible errors.

Signed-off-by: Jeff Lasslett <jeff.lasslett@gmail.com>
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
---
 Jeff, I took out all the url-specific cleanups and expanded their
 scope (see earlier patches). You can safely focus on ftruncate() and
 do an abort there. :)
 http.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/http.c b/http.c
index 98f9707..14d5357 100644
--- a/http.c
+++ b/http.c
@@ -1187,7 +1187,11 @@ struct http_object_request *new_http_object_request(const char *base_url,
 		if (prev_posn>0) {
 			prev_posn = 0;
 			lseek(freq->localfile, 0, SEEK_SET);
-			ftruncate(freq->localfile, 0);
+			if (ftruncate(freq->localfile, 0) < 0) {
+				error("Couldn't truncate temporary file %s for %s: %s",
+					  freq->tmpfile, freq->filename, strerror(errno));
+				goto abort;
+			}
 		}
 	}

--
1.6.3.1
Previous: Tay Ray ChuanNext: Junio C Hamano
Message 5 of 6 in “Check return value of ftruncate call in http.c. Remove possible mem leak”
  1. Check return value of ftruncate call in http.c. Remove possible mem leakJeff Lasslett, Aug 10, 2009
  2. Tay Ray ChuanAug 10, 2009
  3. 1/3 http.c: free preq when abortingTay Ray Chuan, Aug 10, 2009
  4. 2/3 http.c: replace usage of temporary variable for urlsTay Ray Chuan, Aug 10, 2009
  5. 3/3 Check return value of ftruncate call in http.cTay Ray Chuan, Aug 10, 2009
  6. Junio C HamanoAug 11, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.