X-Git-Url: https://git.octo.it/?a=blobdiff_plain;ds=sidebyside;f=unpack-objects.c;h=4b5b5cb3e22454fe487002f698272a19a1d8861d;hb=927a503cd07718ea0f700052043f383253904a56;hp=cfd61ae6b08c0635da4044ec3ab09f40c3178632;hpb=53228a5fb8e80f87803e4a3ba8ed25b70fb4871d;p=git.git diff --git a/unpack-objects.c b/unpack-objects.c index cfd61ae6..4b5b5cb3 100644 --- a/unpack-objects.c +++ b/unpack-objects.c @@ -31,12 +31,10 @@ static void * fill(int min) offset = 0; } do { - int ret = read(0, buffer + len, sizeof(buffer) - len); + int ret = xread(0, buffer + len, sizeof(buffer) - len); if (ret <= 0) { if (!ret) die("early EOF"); - if (errno == EAGAIN || errno == EINTR) - continue; die("read error on input: %s", strerror(errno)); } len += ret; @@ -271,6 +269,8 @@ int main(int argc, char **argv) setup_git_directory(); + quiet = !isatty(2); + for (i = 1 ; i < argc; i++) { const char *arg = argv[i]; @@ -299,14 +299,9 @@ int main(int argc, char **argv) /* Write the last part of the buffer to stdout */ while (len) { - int ret = write(1, buffer + offset, len); - if (!ret) + int ret = xwrite(1, buffer + offset, len); + if (ret <= 0) break; - if (ret < 0) { - if (errno == EAGAIN || errno == EINTR) - continue; - break; - } len -= ret; offset += ret; }