GNU bug report logs - #77039
31.0.50; Flickering on macOS

Previous Next

Package: emacs;

Reported by: Aaron Jensen <aaronjensen <at> gmail.com>

Date: Sat, 15 Mar 2025 16:43:01 UTC

Severity: normal

Found in version 31.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #113 received at 77039 <at> debbugs.gnu.org (full text, mbox):

From: Aaron Jensen <aaronjensen <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: gerd.moellmann <at> gmail.com, alan <at> idiocy.org, 77039 <at> debbugs.gnu.org
Subject: Re: bug#77039: 31.0.50; Flickering on macOS
Date: Sat, 22 Mar 2025 09:47:47 -0700
[Message part 1 (text/plain, inline)]
On Sat, Mar 22, 2025 at 9:41 AM, Eli Zaretskii <eliz <at> gnu.org> wrote:

> From: Aaron Jensen <aaronjensen <at> gmail.com>
> Date: Sat, 22 Mar 2025 09:17:08 -0700
> Cc: gerd.moellmann <at> gmail.com, alan <at> idiocy.org, 77039 <at> debbugs.gnu.org
>
> In my config, I definitely see matrix comparisons when hidden buffers are
> updated. It's row_equal_p and update_text_area that are called in rapid
> succession even when the shell buffer is not visible. I tried disabling
> both my tab bar and my header line (I don't use a mode line) and I still
> saw it updating.
>
> Here's an example log output, this repeats as quickly as yes emits "y"
>
> dispnew.c:4775
> dispnew.c:1295
> dispnew.c:1295
> dispnew.c:1295
> dispnew.c:1295
> dispnew.c:1295
> dispnew.c:1295
> dispnew.c:1295
> dispnew.c:4775
>
> Is the mode_line_p flag of the glyph row set when these comparisons are
> made?
>

I see this:

update_text_area updated_row->mode_line_p: 0
update_text_area updated_row->mode_line_p: 1
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
row_equal_p a->mode_line_p: 0 b->mode_line_p: 0
… Many more of these in each iteration …

So it's set in one update_text_area, but not another.

Aaron
[Message part 2 (text/html, inline)]

This bug report was last modified 113 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.