From 91c8d5905c33e9d7c9014a1c6c7cec8eb86584df Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Sun, 24 Jun 2007 21:20:41 +0200 Subject: detect close failure on just-written file handles I audited git for potential undetected write failures. In the cases fixed below, the diagnostics I add mimic the diagnostics used in surrounding code, even when that means not reporting the precise strerror(errno) cause of the error. Signed-off-by: Jim Meyering Signed-off-by: Junio C Hamano --- builtin-init-db.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'builtin-init-db.c') diff --git a/builtin-init-db.c b/builtin-init-db.c index 0be2d2ef6e..976f47b323 100644 --- a/builtin-init-db.c +++ b/builtin-init-db.c @@ -40,7 +40,8 @@ static int copy_file(const char *dst, const char *src, int mode) return fdo; } status = copy_fd(fdi, fdo); - close(fdo); + if (close(fdo) != 0) + return error("%s: write error: %s", dst, strerror(errno)); if (!status && adjust_shared_perm(dst)) return -1; -- cgit v1.2.1