Subject: bug#1058: 23.0.60; emacs --daemon should not return until socket is ready

From: Dan Nicolaescu <[email-masked]>
Date: Mon, 27 Oct 2008 00:04:07 -0700 (PDT)

Dan Nicolaescu <[email-masked]> writes:

  > Stefan Monnier <[email-masked]> writes:
  > 
  >   > >> > -(defun server-start (&optional leave-dead)
  >   > >> > +(defun server-start (&optional leave-dead server-arg)
  >   > >> >    "Allow this Emacs process to be a server for client processes.
  >   > >> >  This starts a server communications subprocess through which
  >   > >> >  client \"editors\" can send your editing commands to this Emacs
  >   > >> > @@ -463,6 +463,8 @@ kill any existing server communications 
  >   > >> >      (when server-process
  >   > >> >        ;; kill it dead!
  >   > >> >        (ignore-errors (delete-process server-process)))
  >   > >> > +    (when (stringp server-arg)
  >   > >> > +      (setq server-name server-arg))
  >   > >> 
  >   > >> Changing the global var like this is an ugly hack.
  >   > 
  >   > > Sure, it can be moved before the call to `sever-start'
  >   > > I also wanted to make that variable obsolete and make the functional
  >   > > interface the preferred method.
  >   > 
  >   > There's no need or reason to make it obsolete.  You basically want to
  >   > replace the last two lines above with
  >   > 
  >   >     (unless (stringp server-arg)
  >   >       (setq server-arg server-name))
  >   > 
  >   > and then pass server-arg where it's needed.
  > 
  > Ah, OK.  I had the impression that server-name was needed for other
  > functions to work correctly, but that is not the case.
  > Updated patch follows.
  > 
  > Now it's your choice if you want this patch now or later.  I'll update
  > the docs when checking it in.

I checked in a version of this changed as requested by Stefan.