You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In a blank folder, git init and then modify .git\config to make the file bigger than 4K
Run diagnose sub-command, it will hang at waiting for git config --list output.
[ OK ] Environment
[ OK ] File system
[ OK ] Networking
[ xxx ] Git
The underline issue is that GCM spawns a child process and redirects child's stdout. There is a size limit for the pipe buffer, and if the parent process does not read data out quickly, the child process will stall at writing to stdout.
A fix would be to add Process.OutputDataReceived to GitDiagnostic.RunInternalAsync.
I'd suggest reviewing all places that spawn child process for similar issue.
The text was updated successfully, but these errors were encountered:
Repro:
git init
and then modify.git\config
to make the file bigger than 4Kdiagnose
sub-command, it will hang at waiting forgit config --list
output.[ OK ] Environment
[ OK ] File system
[ OK ] Networking
[ xxx ] Git
The underline issue is that GCM spawns a child process and redirects child's stdout. There is a size limit for the pipe buffer, and if the parent process does not read data out quickly, the child process will stall at writing to stdout.
A fix would be to add
Process.OutputDataReceived
toGitDiagnostic.RunInternalAsync
.I'd suggest reviewing all places that spawn child process for similar issue.
The text was updated successfully, but these errors were encountered: