diff options
author | Nicolas Pitre <nico@cam.org> | 2006-10-11 11:49:15 -0400 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-10-11 11:13:01 -0700 |
commit | 9ac13ec941933c32849c2284b5d79ef608023a56 (patch) | |
tree | 618d32a6ba80037f6597f1ad88d9b6405701cd5f /builtin-archive.c | |
parent | 0503f9c178c36a19e1f8e8930b367db0f58ce5ca (diff) | |
download | git-9ac13ec941933c32849c2284b5d79ef608023a56.tar.gz |
atomic write for sideband remote messages
It has been a few times that I ended up with such a confusing display:
|remote: Generating pack...
|remote: Done counting 17 objects.
|remote: Result has 9 objects.
|remote: Deltifying 9 objects.
|remote: 100% (9/9) done
|remote: Unpacking 9 objects
|Total 9, written 9 (delta 8), reused 0 (delta 0)
| 100% (9/9) done
The confusion can be avoided in most cases by writing the remote message
in one go to prevent interleacing with local messages. The buffer
declaration has been moved inside recv_sideband() to avoid extra string
copies.
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'builtin-archive.c')
-rw-r--r-- | builtin-archive.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/builtin-archive.c b/builtin-archive.c index 6dabdee201..9177379122 100644 --- a/builtin-archive.c +++ b/builtin-archive.c @@ -75,7 +75,7 @@ static int run_remote_archiver(const char *remote, int argc, die("git-archive: expected a flush"); /* Now, start reading from fd[0] and spit it out to stdout */ - rv = recv_sideband("archive", fd[0], 1, 2, buf, sizeof(buf)); + rv = recv_sideband("archive", fd[0], 1, 2); close(fd[0]); rv |= finish_connect(pid); |