Subject: Re: bug#11741: 24.1; Daemon Dies When X Exits

From: Glenn Morris <[email-masked]>
Date: Tue, 19 Jun 2012 12:18:01 -0400

woddfellow2 wrote:

> If I start an Emacs daemon, even outside of X, then open an emacsclient
> frame in X, then C-x 5 0, then exit X, the daemon dies. This happens
> even with emacs -Q. This appears to e a regression, as Emacs 23 did not
> have this problem:
>
>   Connection lost to X server `:0'
>   When compiled with GTK, Emacs cannot recover from X disconnects.
>   This is a GTK bug: https://bugzilla.gnome.org/show_bug.cgi?id=85715
>   For details, see etc/PROBLEMS.

The above message seems pretty clear to me.

Here's what the etc/PROBLEMS entry says:

    ** When Emacs is compiled with Gtk+, closing a display kills Emacs.

    There is a long-standing bug in GTK that prevents it from recovering
    from disconnects: http://bugzilla.gnome.org/show_bug.cgi?id=85715.

    Thus, for instance, when Emacs is run as a server on a text terminal,
    and an X frame is created, and the X server for that frame crashes or
    exits unexpectedly, Emacs must exit to prevent a GTK error that would
    result in an endless loop.

    If you need Emacs to be able to recover from closing displays, compile
    it with the Lucid toolkit instead of GTK.