aboutsummaryrefslogtreecommitdiff
path: root/write_or_die.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2008-07-20 16:13:05 -0700
committerJunio C Hamano <gitster@pobox.com>2008-07-20 17:17:09 -0700
commit559e840b74dbbf39633aa68627937a5f7a6d4145 (patch)
tree5d7104780be71a36cbccccd4de20c9363ee97a92 /write_or_die.c
parent7df1709c36ff93f56636ab11db612dedb0d2bed0 (diff)
downloadgit-559e840b74dbbf39633aa68627937a5f7a6d4145.tar.gz
git-559e840b74dbbf39633aa68627937a5f7a6d4145.tar.xz
Move read_in_full() and write_in_full() to wrapper.c
A few compat/* layer functions call these functions, but we would really want to keep them thin, without depending too much on the libgit proper. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'write_or_die.c')
-rw-r--r--write_or_die.c38
1 files changed, 0 insertions, 38 deletions
diff --git a/write_or_die.c b/write_or_die.c
index e4c8e225f..4c29255df 100644
--- a/write_or_die.c
+++ b/write_or_die.c
@@ -45,44 +45,6 @@ void maybe_flush_or_die(FILE *f, const char *desc)
}
}
-ssize_t read_in_full(int fd, void *buf, size_t count)
-{
- char *p = buf;
- ssize_t total = 0;
-
- while (count > 0) {
- ssize_t loaded = xread(fd, p, count);
- if (loaded <= 0)
- return total ? total : loaded;
- count -= loaded;
- p += loaded;
- total += loaded;
- }
-
- return total;
-}
-
-ssize_t write_in_full(int fd, const void *buf, size_t count)
-{
- const char *p = buf;
- ssize_t total = 0;
-
- while (count > 0) {
- ssize_t written = xwrite(fd, p, count);
- if (written < 0)
- return -1;
- if (!written) {
- errno = ENOSPC;
- return -1;
- }
- count -= written;
- p += written;
- total += written;
- }
-
- return total;
-}
-
void fsync_or_die(int fd, const char *msg)
{
if (fsync(fd) < 0) {