Subject: Re: bug#16093: 24.3.50; Crash of emacs --daemon on killing X server

From: Nix <[email-masked]>
Date: Tue, 10 Dec 2013 23:39:33 +0000

On 9 Dec 2013, Dmitry Antipov stated:

> On 12/09/2013 07:58 PM, Nix wrote:
>> It is fairly clear that we should not be calling xftfont_close() if the
>> X server is not there! Why has this started happening?
>
> Hm... IIUC there is no convenient way to check whether X display connection
> is alive. But we can do some tricks, for example, try to select() or poll()
> ConnectionNumber() - if there is no EBADF, X server is hopefully present...

Well, it's never happened before. Something has clearly changed... maybe
we're just cleaning up fonts much more lazily than before? (An ugly hack
to "fix" it in that case might just be to trigger a garbage-collect when
the last frame on a given terminal goes away.)

The Xlib error handler should really be being called, which suggests
this is a bug in Xft as well: I'll chase that up. (But that can't be the
cause of this: I last updated my Xft a year and a half ago.)

-- 
NULL && (void)