--- Begin Message ---
Subject: |
24.4; Emacs daemon exited when separate X connection closed. |
Date: |
Sun, 05 Apr 2015 16:50:51 +0300 |
I run Emacs on development host under X Window as:
$ emacs24
with ~/.emacs:
(require 'server)
(server-start)
In another expriment I start emacs as:
emacs --daemon
emacsclient -c &
Next when I connect to Emacs as:
$ ssh -Y address@hidden
ssh$ emacsclient -c
C-x C-c
ssh$ exit
or as:
$ startx xterm -- `command -v Xnest` :1 -geometry 800x600
xnest$ emacsclient -c
C-x C-c
xnest$ exit
Emacs daemon exited on exit command.
I like ability to join to my Emacs session from remote host for getting
working context immediately. But when I come to original host or try to
re-establish X connection - I have to start new Emacs.
How to make Emacs live when I close remote X connection?
In GNU Emacs 24.4.1 (x86_64-pc-linux-gnu, GTK+ Version 3.14.3)
of 2014-10-25 on trouble, modified by Debian
Windowing system distributor `The X.Org Foundation', version 11.0.11601000
System Description: Debian GNU/Linux testing (jessie)
Configured using:
`configure --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib
--libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info
--mandir=/usr/share/man --with-pop=yes
--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.4/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.4/site-lisp:/usr/share/emacs/site-lisp
--build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib
--libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info
--mandir=/usr/share/man --with-pop=yes
--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.4/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.4/site-lisp:/usr/share/emacs/site-lisp
--with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars 'CFLAGS=-g -O2
-fstack-protector-strong -Wformat -Werror=format-security -Wall'
CPPFLAGS=-D_FORTIFY_SOURCE=2 LDFLAGS=-Wl,-z,relro'
--
Best regards!
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#20263: 24.4; Emacs daemon exited when separate X connection closed. |
Date: |
Sun, 05 Apr 2015 17:43:37 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) |
>From etc/PROBLEMS (it talks about Emacs running as a server on a text
terminal, but that's equivalent to what --daemon does on your case):
** 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.
Closing the bug report.
--- End Message ---