This is the mail archive of the cygwin-developers mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[64bit] emacs is unable to call subprocesses if display-time-mode is set


When you set display-time-mode in emacs, the mode line near the bottom of the screen shows the current time. The code that does this involves setting itimers.

After I set display-time-mode, every attempt to start a subprocess within emacs fails. Steps to reproduce:

1. Install my build of 64-bit emacs, which was just uploaded to 64bit/release.

2. Start emacs via `emacs -Q' in a Cygwin terminal.

3. You should now be in the *scratch* buffer.  Set display-time-mode:

  <alt-x>display-time-mode<ret>

[You should see the time displayed in the mode line.]

4. Type the following text in the *scratch* buffer, position the cursor at the end, and type `<cntl-j>':

(call-process "/bin/ls" nil t t)

emacs will report "Can't exec program: /bin/ls".

I tried to step through the emacs code in gdb, but gdb became unresponsive after a while and I had to kill it with the Task Manager.

I also tried strace, with the following results:

(a) If I attach strace to a running emacs process and then carry out steps 3 and 4 above, the emacs output in step 4 changes to "Segmentation fault". The strace output does in fact show a SEGV. I've posted the strace output from one such run at

  http://sanibeltranquility.com/cygwin/strace.out

(b) If instead I run emacs under strace from the beginning, the bug disappears.

Ken


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]