unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Liam Quinlan <liamkquinlan@gmail.com>
Cc: emacs-devel@gnu.org
Subject: Re: --with-cairo Emacs server crash and fix
Date: Fri, 09 Aug 2019 10:11:03 +0300	[thread overview]
Message-ID: <83imr6ak54.fsf@gnu.org> (raw)
In-Reply-To: <CAAQqQ-2FoS9PPQ7CsK31Z6gD2udqOf=b2d=unLA-NOo4RYYyAA@mail.gmail.com> (message from Liam Quinlan on Thu, 8 Aug 2019 03:01:39 -0400)

> From: Liam Quinlan <liamkquinlan@gmail.com>
> 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	other threads:[~2019-08-09  7:11 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-08  7:01 --with-cairo Emacs server crash and fix Liam Quinlan
2019-08-09  7:11 ` Eli Zaretskii [this message]
  -- strict thread matches above, loose matches on Subject: below --
2019-08-09 15:40 Liam Quinlan
2019-08-10  9:39 ` Eli Zaretskii
2019-08-12 10:42   ` Liam Quinlan
2019-08-12 10:48   ` Liam Quinlan
2019-08-12 16:59     ` Eli Zaretskii
2019-08-12 20:00       ` Liam Quinlan
2019-08-13  2:52       ` Liam Quinlan
2019-08-13 15:00         ` Eli Zaretskii
2019-08-13 17:36           ` Liam Quinlan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83imr6ak54.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=liamkquinlan@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).