emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: --with-cairo Emacs server crash and fix


From: Eli Zaretskii
Subject: Re: --with-cairo Emacs server crash and fix
Date: Fri, 09 Aug 2019 10:11:03 +0300

> From: Liam Quinlan <address@hidden>
> Date: Thu, 8 Aug 2019 03:01:39 -0400
> 
> If emacs is compiled for xwindows --with-cairo, then started with --daemon, 
> and any packages that define a
> fringe bitmap are used (including builtin flymake), then 
> 'define-fringe-bitmap' will be called from lisp during
> startup and attempt to define dynamic bitmaps when emacs has no active frame.
> 
> This is a problem because 'init_fringe_bitmap' (in src/fringe.c) relies on 
> the SELECTED_FRAME macro in
> order to access a redisplay_interface structure and call 
> 'rif->define_fringe_bitmap'.  Until a frame is created
> for a client session, this process will fail, causing emacs to skip calling 
> 'rif->define_fringe_bitmap' (which
> should initialize 'fringe_bmp[which]' for cairo builds), but otherwise 
> proceed as if the bitmap in question exists.
>  (note the code in question already contains the following comment: '/* XXX 
> Is SELECTED_FRAME OK here?
> */' ... it is not.)

Is this specific to the Cairo build, or will this happen with any
build of Emacs that supports GUI frames?  In the latter case the
proposed fix is incomplete, I think.

Can you please provide a minimal reproduction recipe for reproducing
this problem, including the minimal init file?

Thanks.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]