>>>> "Paul" == Paul Stodghill
<stodghil(a)cs.cornell.edu> writes:
Paul> I managed to reproduce this with 21.4.6 and 21.5.4 under cygwin and 21.4.5
under Linux.
Paul> quimby$ cat foo.el
Paul> (let* ((buf (compile "make"))
Paul> (proc (get-buffer-process buf)))
Paul> (while (= 0 (process-exit-status proc))
Paul> (sleep-for 1))
Paul> (message "%s" (buffer-string buf)))
Paul> quimby$
This does not happen in native Windows 2000 XEmacs.
Evaluating the above in the scratch buffer of my running emacs-version
"21.4 (patch 6) \"Common Lisp (Windows)\" XEmacs Lucid" does not
crash
it.
Instead it hangs in the while loop.
I can get out with C-g, which gives me (after setting debug-on-quit):
Signaling: (quit)
sleep-for(1)
(while (= 0 (process-exit-status proc)) (sleep-for 1))
(let* ((buf ...) (proc ...)) (while (= 0 ...) (sleep-for 1)) (message "%s"
(buffer-string buf)))
eval((let* ((buf ...) (proc ...)) (while (= 0 ...) (sleep-for 1)) (message
"%s" (buffer-string buf))))
eval-interactive((let* ((buf ...) (proc ...)) (while (= 0 ...) (sleep-for 1)) (message
"%s" (buffer-string buf))))
eval-last-sexp(nil)
call-interactively(eval-last-sexp)
Paul> quimby$
Paul> quimby$ xemacs -vanilla -batch -load foo.el
Paul> (No files need saving)
Paul> Fatal error (11).
Paul> Your files have been auto-saved.
Paul> Use `M-x recover-session' to recover them.
Paul> If you have access to the PROBLEMS file that came with your
Paul> version of XEmacs, please check to see if your crash is described
Paul> there, as there may be a workaround available.
Paul> Otherwise, please report this bug by running the send-pr
Paul> script included with XEmacs, or selecting `Send Bug Report'
> from the help menu.
Paul> As a last resort send
ordinary email to `crashes(a)xemacs.org'.
Paul> *MAKE SURE* to include the information in the command
Paul> M-x describe-installation.
Paul> If at all possible, *please* try to obtain a C stack backtrace;
Paul> it will help us immensely in determining what went wrong.
Paul> To do this, locate the core file that was produced as a result
Paul> of this crash (it's usually called `core' and is located in the
Paul> directory in which you started the editor, or maybe in your home
Paul> directory), and type
Paul> gdb /usr/local/bin/xemacs core
Paul> then type `where' when the debugger prompt comes up.
Paul> (If you don't have GDB on your system, you might have DBX,
Paul> or XDB, or SDB. A similar procedure should work for all of
Paul> these. Ask your system administrator if you need more help.)
Paul> Lisp backtrace follows:
Paul> pos-visible-in-window-p(152 #<window on "*compilation*"
0x2436>)
Paul> # bind (buffer-read-only status)
Paul> # (unwind-protect ...)
Paul> # bind (obuf omax opoint estatus window buffer msg proc)
Paul> compilation-sentinel(#<process "compilation" pid 3612
state:exit> "exited abnormally with code 2\n")
Paul> # (condition-case ... . error)
Paul> # bind (inhibit-quit)
Paul> # (unwind-protect ...)
Paul> # (unwind-protect ...)
Paul> sleep-for(1)
Paul> (while (= 0 (process-exit-status proc)) (sleep-for 1))
Paul> # bind (proc buf)
Paul> (let* ((buf ...) (proc ...)) (while (= 0 ...) (sleep-for 1)) (message
"%s" (buffer-string buf)))
Paul> # bind (current-load-list)
Paul> # (unwind-protect ...)
Paul> # bind (load-file-name)
Paul> # (unwind-protect ...)
Paul> # (unwind-protect ...)
Paul> # (unwind-protect ...)
Paul> # (unwind-protect ...)
Paul> # (unwind-protect ...)
Paul> load-internal("/home/stodghil/foo.el" nil t nil undecided)
Paul> # bind (path handler filename nosuffix nomessage noerror file)
Paul> load("/home/stodghil/foo.el" nil t)
Paul> # bind (file arg)
Paul> command-line-do-load("-load")
Paul> # bind (dir file-count line end-of-options file-p arg tem)
Paul> command-line-1()
Paul> # bind (command-line-args-left)
Paul> command-line()
Paul> # (unwind-protect ...)
Paul> normal-top-level()
Paul> # (condition-case ... . error)
Paul> # (catch top-level ...)
Paul> Segmentation fault
Paul> quimby$
--
Adrian Aichner
mailto:adrianï¼ xemacs.org
http://www.xemacs.org/