No.
We basically _never_ want "line buffered" or "unbuffered", which is what
stdio knows how to do. That sucks in _all_ cases.
What we want is "fully buffered" for plain files, and "record buffered"
for anything else (where a "record" is basically the "commit + optional
diff").
We can get the record buffered by adding the fflush() calls, but the thing
is, we'd want to _avoid_ that if it was a file. It's just that there is no
way to set that kind of flag portably with stdio, we'd have to carry it
around _separately_ from stdio, which is a big pain.
But if we decide that this only matters with stdout (which currently is
what the patches have done), we could of course just make it a single
global variable (like "stdout" itself already is). Then we could just make
git.c start out by testing stdout at startup and setting the global
variable.
Linus
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html