tag | cb4d7397e0c837c174da52da022d4bab94ce8baf | |
---|---|---|
tagger | Thomas Braun <thomas.braun@byte-physics.de> | Thu Mar 19 21:47:07 2015 |
object | 2283439618e4fde68d83af30a3d55399f8862624 |
Git 1.9.5
commit | 2283439618e4fde68d83af30a3d55399f8862624 | [log] [tgz] |
---|---|---|
author | Edward Thomson <ethomson@microsoft.com> | Wed Mar 18 14:10:41 2015 |
committer | Thomas Braun <thomas.braun@byte-physics.de> | Thu Mar 19 16:38:36 2015 |
tree | 867d7ba93d07a8d30736c8c6f6dc7f73ce07d230 | |
parent | 66b892a141f59adaf8a94c459b84a07bac8b41ea [diff] |
poll: honor the timeout on Win32 Ensure that when passing a pipe, the gnulib poll replacement will not return 0 before the timeout has passed. Not obeying the timeout (and merely returning 0) causes pathological behavior when preparing a packfile for a repository and taking a long time to do so. If poll were to return 0 immediately, this would cause keep-alives to get sent as quickly as possible until the packfile was created. Such deviance from the standard would cause megabytes (or more) of keep-alive packets to be sent. GetTickCount is used as it is efficient, stable and monotonically increasing. (Neither GetSystemTime nor QueryPerformanceCounter have all three of these properties.)
This is the source code of Git for Windows, forked from Git.
If you encounter problems, you can report them as GitHub issues, discuss them on Git for Windows' Google Group, and encourage others to work on by tipping via .