On 21 March 2014 07:53, Eli Zaretskii wrote: > > Date: Thu, 20 Mar 2014 23:10:19 +0000 > > From: Reuben Thomas > > Cc: Stefan Monnier , Andreas Schwab < > schwab@linux-m68k.org>, > > 17036@debbugs.gnu.org > > > > I'm sorry, I seem to have made a total hash of explaining something > really > > simple. In effect, I want kill-emacs-and-exec, which takes a list of > > arguments, runs kill-emacs, and then execs the argument list. > > As long as it does what you want, fine. But please note that this is > not the same as exiting Emacs and starting a new session, because the > original Emacs didn't shut down all the way, and the PID is the same. > I think I'm still being unclear, sorry. I am assuming that all the regular atexit handlers have already been called, and that Emacs is really about to exit. (That is what I mean by saying that kill-emacs has been run.) So, this could be implemented by ensuring that the first atexit handler to be registered on startup checks a "kill-emacs-and-exec" flag, and if it is set, does the exec. Correspondingly, kill-emacs-and-exec would set the flag, store the arguments in a suitable place, and then tail-call to kill-emacs. -- http://rrt.sc3d.org