Some time ago, Andy Piper wrote...
| Well this fixes the cygwin process output problem, but I have a sneaking
| suspicion that this might be a bad thing to do in some circumstances.
| Can someone confirm or deny this? All I've done is used the coding type to
| dynamically determine the output.
I think that 'undecided should be the default always, not only in
cygwin case. I have changed this for asynchronous processes for
beta34 or around, and no one have seen any misbehavior or something,
except for eterm "ladder" problem (which of course should be fixed
in eterm - it *wants* untarnaslated CR-LF, so must explicitly claim that).
Basically, a good lisp code should not rely on coding-system-for-*
being 'binary; for example, code which runs zcat in about.el correctly
binds these variables to 'binary.
| *** code-process.el 1998/04/11 05:36:53 1.3
| --- code-process.el 1998/04/30 02:07:59
| *** 77,82 ****
| --- 77,84 ----
| (setq ret (funcall ret 'call-process program))
| (cond ((consp ret) (car ret))
| + ((and (not ret) (eq system-type 'cygwin32))
| + 'undecided)
| ((find-coding-system ret) ret)