[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#10217: 24.0.92; Error on quitting Emacs
From: |
Glenn Morris |
Subject: |
bug#10217: 24.0.92; Error on quitting Emacs |
Date: |
Mon, 05 Dec 2011 21:47:52 -0500 |
User-agent: |
Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) |
Jürgen Bickert wrote:
> If you evaluate '(start-process "foo" " foo" "ls" 10)' an error occurs
> since 10 is not of type sequence. Then if you try to quit emacs the same
> error occurs which makes it impossible to quit emacs without killing
> it.
IIUC, start-process contains code which is supposed to handle this kind
of thing:
/* If an error occurs and we can't start the process, we want to
remove it from the process list.
But it doesn't seem to work. Eg:
(start-process "foo" "foo" "FOO" )
-> (file-error "Searching for program" "no such file or directory" "FOO")
yet
(process-list)
-> (#<process foo>)
(This was previously reported as http://debbugs.gnu.org/7021 ).
It works as it should in Emacs 23.1, but not in 23.2 or later.
By experiment, reverting the 2009-08-13 change to start_process_unwind
("Use pid == -2 to mean no process") seems to fix it, ie:
*** src/process.c 2011-11-28 08:20:58 +0000
--- src/process.c 2011-12-06 02:40:35 +0000
***************
*** 1522,1528 ****
abort ();
/* Was PROC started successfully? */
! if (XPROCESS (proc)->pid == -1)
remove_process (proc);
return Qnil;
--- 1522,1528 ----
abort ();
/* Was PROC started successfully? */
! if (XPROCESS (proc)->pid <= 0)
remove_process (proc);
return Qnil;