projects
/
git.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
28ffb89
)
copy.c::copy_fd() - do not leak file descriptor on error return.
author
Junio C Hamano
<junkio@cox.net>
Sat, 5 Nov 2005 19:02:56 +0000
(11:02 -0800)
committer
Junio C Hamano
<junkio@cox.net>
Sat, 5 Nov 2005 19:02:56 +0000
(11:02 -0800)
Signed-off-by: Junio C Hamano <junkio@cox.net>
copy.c
patch
|
blob
|
history
diff --git
a/copy.c
b/copy.c
index
2009275
..
e1cd5d0
100644
(file)
--- a/
copy.c
+++ b/
copy.c
@@
-10,10
+10,13
@@
int copy_fd(int ifd, int ofd)
if (!len)
break;
if (len < 0) {
+ int read_error;
if (errno == EAGAIN)
continue;
+ read_error = errno;
+ close(ifd);
return error("copy-fd: read returned %s",
- strerror(
errno
));
+ strerror(
read_error
));
}
while (1) {
int written = write(ofd, buf, len);