Code

git-gui: Corrected diff-index/diff-files protocol parsing errors.
authorShawn O. Pearce <spearce@spearce.org>
Tue, 7 Nov 2006 23:34:09 +0000 (18:34 -0500)
committerShawn O. Pearce <spearce@spearce.org>
Wed, 8 Nov 2006 04:48:20 +0000 (23:48 -0500)
commit868c8752451c0b75502a0134068f0cfe055eb7ad
treeab82641842717825499516e6dc6408b1f47752e9
parentc5437df168379f33c7148c60b232b5c2887dd537
git-gui: Corrected diff-index/diff-files protocol parsing errors.

When we were receiving a lot of output from diff-index we split records
at the wrong locations and started using the file status information
(mode and SHA1s) as path names, and then proceeded to try to use part
of the path names as status data.  This caused all sorts of havoc.

So I rewrote the parsing implementation to scan for the pair of null
bytes along the buffer and stop scanning (waiting for more data) if
both can't be found during this event.  This seems to work well under
high load (like when processing 6,983 added files).

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
git-gui