I just upgraded my version of Emacs, and now I'm seeing some very
strange behavior out of the 'ping' command. Specifically, when I run
ping from a bash shell inside the new version of emacs (21.3.1), it
prints only blank lines, whereas when I run ping from a bash shell
inside the old version of emacs (20.7.1), it displays ping's output
correctly. Under both versions of emacs, ping produces 12 lines of
output. If I invoke ping from M-! (which invokes the elisp function
`shell-command'), the output is correct under both versions.
Here's my configuration:
OS Windows XP Pro
Emacs 21.3.1 (Windows port) and 20.7.1 (Windows port)
Bash 2.05b.0(9)-release (i686-pc-cygwin)
Ping version unknown
'which ping' reports /cygdrive/c/WINDOWS/system32/ping
Example bash/ping output under emacs 20.7.1:
bash-2.05b$ ping mit.edu
Pinging mit.edu [18.7.22.69] with 32 bytes of data:
Reply from 18.7.22.69: bytes=32 time=14ms TTL=248
Reply from 18.7.22.69: bytes=32 time=12ms TTL=248
Reply from 18.7.22.69: bytes=32 time=13ms TTL=248
Reply from 18.7.22.69: bytes=32 time=12ms TTL=248
Ping statistics for 18.7.22.69:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 12ms, Maximum = 14ms, Average = 12ms
bash-2.05b$
Example bash/ping output under emacs 21.3.1:
bash-2.05b$ ping mit.edu
bash-2.05b$
Example M-!/ping output, identical under both emacs 20.7.1 and emacs
21.3.1:
NOTE: The resulting *Shell Command Output* buffer indicates that
ping is outputting '\r' as well as '\n' as line terminators, and
displays the '\r' characters as "^M". After copying that buffer
into this email, I replaced all occurrences of '\r' with '^'
followed by 'M' to guarantee that you'll see the same thing as I'm
seeing on my screen.
^M^M
Pinging mit.edu [18.7.22.69] with 32 bytes of data:^M^M
^M^M
Reply from 18.7.22.69: bytes=32 time=16ms TTL=248^M^M
Reply from 18.7.22.69: bytes=32 time=12ms TTL=248^M^M
Reply from 18.7.22.69: bytes=32 time=13ms TTL=248^M^M
Reply from 18.7.22.69: bytes=32 time=12ms TTL=248^M^M
^M^M
Ping statistics for 18.7.22.69:^M^M
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),^M^M
Approximate round trip times in milli-seconds:^M^M
Minimum = 12ms, Maximum = 16ms, Average = 13ms^M^M
Does anyone have any idea why the same ping and bash executables
behave so differently under these two different versions of emacs?
Mark Rosenthal
address@hidden