From: Liam Quinlan <liamkquinlan@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: --with-cairo Emacs server crash and fix
Date: Mon, 12 Aug 2019 06:42:26 -0400 [thread overview]
Message-ID: <CAAQqQ-03GnmoppMdP8aeZbf_m-_CiMizqTSgAHSCpoGuPHuSHA@mail.gmail.com> (raw)
In-Reply-To: <83pnld8imb.fsf@gnu.org>
[-- Attachment #1: Type: text/plain, Size: 3042 bytes --]
Sorry for the delay responding. It looks like you were right about the w32
version being related; I'd noticed it previously but as dismissed it as a
different platform's private static. Something similar to my original
suggestion should work for the windows build too, but I don't have a
Windows box to test on.
Here's an annotated log of a full debugging session (which includes the
backtrace you asked for). I've tried to answer your questions that way;
hopefully I'll have better luck communicating with the added context.
https://pastebin.com/HBB46VC5
cheers
On Sat, Aug 10, 2019, 05:39 Eli Zaretskii, <eliz@gnu.org> wrote:
> > From: Liam Quinlan <liamkquinlan@gmail.com>
> > Date: Fri, 9 Aug 2019 11:40:21 -0400
> >
> > It is definitely specific to cairo builds. The 'fringe_bmp' array (not
> to be confused with the 'fringe_bitmaps'
> > array) has a cairo api type and is declared behind #ifdef USE_CAIRO.
>
> I see a similar (w32-specific) variable in the MS-Windows build, so
> this is at least relevant to MS-Windows as well.
>
> > I *think* the minimal init file to reproduce is actually '-Q'...
> provided you can get flymake to display its error
> > fringe indicator, which embarrassingly I cannot (no backends will run...
> definitely unrelated, probably self
> > inflicted). Assuming you can accomplish this (flymake-error-bitmap
> uses flymake-double-exclaimation-mark,
> > flymake-fringe-indicator-position isn't nil, fringe-mode is on, etc),
> the steps to reproduce are very simple:
> >
> > 1. build --with-cairo, using any x toolkit
> > 2. start an emacs server with --daemon option (ie don't 'M-x
> server-mode')
> > 3: connect normally with emacsclient
> > 4: open a file with syntax errors and more than one screen of text
> > 5: get flymake to display its error indicators
> > 6: scroll up and down. It won't take very long.
>
> Can you please show a C-level backtrace from the crash, and also the
> result of xbacktrace (this will be automatic if you start GDB in the
> Emacs src/ directory)? Without that, I'm not sure I understand the
> scenario, since after the emacsclient connection Emacs already has a
> fringe-capable frame, so fringe related code should work. I'm
> probably missing something.
>
> Also, I'd like to be able to reproduce without flymake. There are
> built-in features that define bitmaps, like indicate-buffer-boundaries
> and indicate-empty-lines; can they be used to reproduce the problem
> instead of flymake?
>
> > Should it prove easier somehow flycheck and sesman also define custom
> bitmaps, either of which will do. It
> > can be any fringe-bitmap defined in package that gets loaded during the
> daemon process's own startup.
> > Packages that don't load until emacsclient connects are fine, as by that
> point an x frame exists and
> > SELECTED_FRAME will work.
>
> See, you are talking about "packages loaded during startup", but
> didn't show any init files to that effect. This makes it hard to
> reproduce the problem and debug it independently.
>
> Thanks.
>
[-- Attachment #2: Type: text/html, Size: 3880 bytes --]
next prev parent reply other threads:[~2019-08-12 10:42 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-09 15:40 --with-cairo Emacs server crash and fix Liam Quinlan
2019-08-10 9:39 ` Eli Zaretskii
2019-08-12 10:42 ` Liam Quinlan [this message]
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
-- strict thread matches above, loose matches on Subject: below --
2019-08-08 7:01 Liam Quinlan
2019-08-09 7:11 ` Eli Zaretskii
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAAQqQ-03GnmoppMdP8aeZbf_m-_CiMizqTSgAHSCpoGuPHuSHA@mail.gmail.com \
--to=liamkquinlan@gmail.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
/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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.