emacs-devel
[Top][All Lists]
Advanced

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

Re: delete-process bug


From: Richard Stallman
Subject: Re: delete-process bug
Date: Thu, 25 May 2006 22:22:31 -0400

Thanks for working on this.  I agree that `live_deleted_processes'
is a good name.  ("Zombie process" has a different meaning.)

However, maybe there is still a race condition.  Suppose the signal
comes in the middle of the line

    +      live_deleted_processes = Fcons (make_number (p->pid),
    +                                 /* GC previous elements.  */
    +                                 Fdelq (Qnil, live_deleted_processes));

Suppose it comes between there and the call to remove_process?

Does the right thing happen in all these cases?
If not, maybe it is necessary to block signals starting from
just before setting live_deleted_processes thru after calling
remove_process.


Also, please remember that in Emacs braces go on lines by themselves:

+      tail = Fmemq (make_number (pid), live_deleted_processes);
+      if (!NILP (tail)) {
+       Fsetcar (tail, Qnil);
+       return;
+      }




reply via email to

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