summaryrefslogtreecommitdiff
path: root/git-compat-util.h
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <junkio@cox.net>2005-12-21 00:01:00 -0800
committerLibravatar Junio C Hamano <junkio@cox.net>2005-12-21 00:01:00 -0800
commitc2f3bf071ee90b01f2d629921bb04c4f798f02fa (patch)
tree08ffe5b40e062d596deee47f3869278f4661a858 /git-compat-util.h
parentGIT 0.99.9n aka 1.0rc6 (diff)
parentMake "git-send-pack" less verbose by default (diff)
downloadtgif-c2f3bf071ee90b01f2d629921bb04c4f798f02fa.tar.xz
GIT 1.0.0
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-compat-util.h')
-rw-r--r--git-compat-util.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/git-compat-util.h b/git-compat-util.h
index ead0ede587..0c98c9937d 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -84,6 +84,28 @@ static inline void *xcalloc(size_t nmemb, size_t size)
return ret;
}
+static inline ssize_t xread(int fd, void *buf, size_t len)
+{
+ ssize_t nr;
+ while (1) {
+ nr = read(fd, buf, len);
+ if ((nr < 0) && (errno == EAGAIN || errno == EINTR))
+ continue;
+ return nr;
+ }
+}
+
+static inline ssize_t xwrite(int fd, const void *buf, size_t len)
+{
+ ssize_t nr;
+ while (1) {
+ nr = write(fd, buf, len);
+ if ((nr < 0) && (errno == EAGAIN || errno == EINTR))
+ continue;
+ return nr;
+ }
+}
+
/* Sane ctype - no locale, and works with signed chars */
#undef isspace
#undef isdigit