emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debbugs-tracker] bug#13166: closed ( ‘syst em*’ may leave dangling proc


From: GNU bug Tracking System
Subject: [debbugs-tracker] bug#13166: closed ( ‘syst em*’ may leave dangling processes)
Date: Wed, 19 Dec 2012 22:31:02 +0000

Your message dated Wed, 19 Dec 2012 23:29:57 +0100
with message-id <address@hidden>
and subject line Re: bug#13166: ‘system*’ may leave dangling processes
has caused the debbugs.gnu.org bug report #13166,
regarding ‘system*’ may leave dangling processes
to be marked as done.

(If you believe you have received this mail in error, please contact
address@hidden)


-- 
13166: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13166
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: ‘system*’ may leave dangling processes Date: Thu, 13 Dec 2012 00:14:32 +0100 User-agent: Gnus/5.130005 (Ma Gnus v0.5) Emacs/24.2 (gnu/linux)
When running this:

  (false-if-exception (system* "does-not-exist"))

a process is left behind.

One possible solution is to make sure the child exits:

diff --git a/libguile/simpos.c b/libguile/simpos.c
index 5c8fe96..2e340e2 100644
--- a/libguile/simpos.c
+++ b/libguile/simpos.c
@@ -138,9 +138,7 @@ SCM_DEFINE (scm_system_star, "system*", 0, 0, 1,
         {
           /* child */
           execvp (execargv[0], execargv);
-          SCM_SYSERROR;
-          /* not reached.  */
-          return SCM_BOOL_F;
+         _exit (127);
         }
       else
         {
We’d still need to print ‘strerror (errno)’ in the child, though.

Thoughts?

Ludo’.

--- End Message ---
--- Begin Message --- Subject: Re: bug#13166: ‘system*’ may leave dangling processes Date: Wed, 19 Dec 2012 23:29:57 +0100 User-agent: Gnus/5.130005 (Ma Gnus v0.5) Emacs/24.2 (gnu/linux)
Fixed in 668ba7c.

Ludo'.


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]