Commits


typo


document how profiling works


make it possible to profile gotweb; tracey had the same diff


unveil gmon.out if gotweb is being profiled ok tracey


use socketpair(2) instead of pipe(2) for bi-directional communication On Linux, pipes returned from pipe(2) only work in one direction. This broke 'got clone' over ssh in the -portable version because got-fetch-pack assumes it can use its fetchfd for both reading and writing. I wrote a complicated diff to use two pipe(2) calls instead of one, but millert suggested a simpler solution: Use socketpair(2) instead of pipe(2). ok millert jrick tracey


fix hang in commit regress test. ok stsp


use Patience diff for merging during cherrypick/backout/histedit/rebase This has been shown to prevent mis-merges in some cases. It's probably not a final solution. We should look at what Git's "recursive merge" is doing and implement something similar. Keep using Myers during update/unstage. The advantage of Myers is that it produces smaller conflict chunks, and there are no known cases of mis-merges which affect update/unstage.


check for close(2) error in got_repo_close() and propagate errors up ok tracey


close all opened repo->gitdir_fd's and set open_repo static. ok naddy (with static change)


in addblk(), only read data into buffer1 if we will compare it to buffer2 suggested by and ok naddy@


addblk() may seek in its input file; reposition the file pointer afterwards


addblk: iterate over the correct number of entries after growing the array ok naddy


addblk: be more careful about expanding the blocks array when we outgrow it fixes + ok naddy


check a block's hash as well as its length before expensive comparisons suggested by + ok naddy, and Ori agrees


remove stray debug print which was accidentally committed