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

[Resend Trivial PATCH] For the sake of correctness, fix file descriptor leak.

From
ARAndré Goddard Rosa <andre.goddard@gmail.com>
Date
Nov 25, 2007, 21:37 UTC
Message-ID
<b8bf37780711251337q41e02304q8fd2654b1e83201@mail.gmail.com>
In-Reply-To
<b8bf37780711211659v4fbd5936t29d0a0a2ff84f4b@mail.gmail.com>
Hi, all!
    Plug a file descriptor leak.
From 9fba346aca7470633ee46848013051248493896c Mon Sep 17 00:00:00 2001
From: Andre Goddard Rosa <andre.goddard@gmail.com>
Date: Tue, 27 Nov 2007 10:16:22 -0200
Subject: [PATCH] For the sake of correctness, fix file descriptor leak.
Signed-off-by: Andre Goddard Rosa <andre.goddard@gmail.com>
---
 builtin-rerere.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/builtin-rerere.c b/builtin-rerere.c
index 7449323..31766be 100644
--- a/builtin-rerere.c
+++ b/builtin-rerere.c
@@ -275,8 +275,10 @@ static int copy_file(const char *src, const char *dest)

        if (!(in = fopen(src, "r")))
                return error("Could not open %s", src);
-       if (!(out = fopen(dest, "w")))
+       if (!(out = fopen(dest, "w"))) {
+               fclose(in);
                return error("Could not open %s", dest);
+       }
        while ((count = fread(buffer, 1, sizeof(buffer), in)))
                fwrite(buffer, 1, count, out);
        fclose(in);
--
1.5.3.6.861.gd794-dirty
-- 
[]s,
André Goddard


From 9fba346aca7470633ee46848013051248493896c Mon Sep 17 00:00:00 2001
From: Andre Goddard Rosa <andre.goddard@gmail.com>
Date: Tue, 27 Nov 2007 10:16:22 -0200
Subject: [PATCH] For the sake of correctness, fix file descriptor leak.

Signed-off-by: Andre Goddard Rosa <andre.goddard@gmail.com>
---
 builtin-rerere.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/builtin-rerere.c b/builtin-rerere.c
index 7449323..31766be 100644
--- a/builtin-rerere.c
+++ b/builtin-rerere.c
@@ -275,8 +275,10 @@ static int copy_file(const char *src, const char *dest)
 
 	if (!(in = fopen(src, "r")))
 		return error("Could not open %s", src);
-	if (!(out = fopen(dest, "w")))
+	if (!(out = fopen(dest, "w"))) {
+		fclose(in);
 		return error("Could not open %s", dest);
+	}
 	while ((count = fread(buffer, 1, sizeof(buffer), in)))
 		fwrite(buffer, 1, count, out);
 	fclose(in);
-- 
1.5.3.6.861.gd794-dirty
Previous: André Goddard RosaNext: Junio C Hamano
Message 2 of 3 in “For the sake of correctness, fix file descriptor leak.”
  1. For the sake of correctness, fix file descriptor leak.André Goddard Rosa, Nov 22, 2007
  2. For the sake of correctness, fix file descriptor leak.André Goddard Rosa, Nov 25, 2007
  3. Junio C HamanoNov 25, 2007

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.