GNU bug report logs - #68799
30.0.50; emacs --fg-daemon fails silently if server-start fails

Previous Next

Package: emacs;

Reported by: Spencer Baugh <sbaugh <at> janestreet.com>

Date: Mon, 29 Jan 2024 16:55:02 UTC

Severity: normal

Found in version 30.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #26 received at 68799 <at> debbugs.gnu.org (full text, mbox):

From: Spencer Baugh <sbaugh <at> janestreet.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 68799 <at> debbugs.gnu.org
Subject: Re: bug#68799: 30.0.50; emacs --fg-daemon fails silently if
 server-start fails
Date: Mon, 29 Jan 2024 15:28:47 -0500
Eli Zaretskii <eliz <at> gnu.org> writes:
>> From: Spencer Baugh <sbaugh <at> janestreet.com>
>> Cc: 68799 <at> debbugs.gnu.org
>> Date: Mon, 29 Jan 2024 13:13:42 -0500
>> 
>> --- a/lisp/startup.el
>> +++ b/lisp/startup.el
>> @@ -1627,7 +1627,11 @@ command-line
>>    (let ((dn (daemonp)))
>>      (when dn
>>        (when (stringp dn) (setq server-name dn))
>> -      (server-start)
>> +      (condition-case err
>> +          (server-start)
>> +        (error
>> +         (message "%s" (error-message-string err))
>> +         (kill-emacs 1)))
>
> Thanks, this needs a comment explaining why we need condition-case and
> where does error-message-string come from.

Actually, on second thought, we could fail anywhere in startup.el, not
just in server-start.  So should we actually have a wrapper around all
of normal-top-level which detects an error at startup in a daemon?

For example, this will also fail to start the server and hang with no
error message:

emacs --eval '(error)' --daemon

Likewise any errors raised in init.el will also just hang without
starting the server, although that at least causes some logs to be
printed.

Maybe we should handle this in the C top_level_1, conditional on
IS_DAEMON?




This bug report was last modified 1 year and 87 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.