init-db::copy_file() - use copy_fd()

Signed-off-by: Junio C Hamano <junkio@cox.net>
diff --git a/init-db.c b/init-db.c
index ca6fa4d..bd88291 100644
--- a/init-db.c
+++ b/init-db.c
@@ -21,7 +21,7 @@
 
 static int copy_file(const char *dst, const char *src, int mode)
 {
-	int fdi, fdo;
+	int fdi, fdo, status;
 
 	mode = (mode & 0111) ? 0777 : 0666;
 	if ((fdi = open(src, O_RDONLY)) < 0)
@@ -30,30 +30,9 @@
 		close(fdi);
 		return fdo;
 	}
-	while (1) {
-		char buf[BUFSIZ];
-		ssize_t leni, leno, ofs;
-		leni = read(fdi, buf, sizeof(buf));
-		if (leni < 0) {
-		error_return:
-			close(fdo);
-			close(fdi);
-			return -1;
-		}
-		if (!leni)
-			break;
-		ofs = 0;
-		do {
-			leno = write(fdo, buf+ofs, leni);
-			if (leno < 0)
-				goto error_return;
-			leni -= leno;
-			ofs += leno;
-		} while (0 < leni);
-	}
+	status = copy_fd(fdi, fdo);
 	close(fdo);
-	close(fdi);
-	return 0;
+	return status;
 }
 
 static void copy_templates_1(char *path, int baselen,