GNU bug report logs - #77988
31.0.50; No more images after fullscreen and load-theme

Previous Next

Package: emacs;

Reported by: Manuel Giraud <manuel <at> ledu-giraud.fr>

Date: Tue, 22 Apr 2025 14:14:02 UTC

Severity: normal

Found in version 31.0.50

Full log


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

From: Alan Third <alan <at> idiocy.org>
To: Eli Zaretskii <eliz <at> gnu.org>,
 Elijah Gabe Pérez <eg642616 <at> gmail.com>,
 77988 <at> debbugs.gnu.org, manuel <at> ledu-giraud.fr, Po Lu <luangruo <at> yahoo.com>
Subject: Re: bug#77988: 31.0.50; No more images after fullscreen and load-theme
Date: Fri, 23 May 2025 21:34:43 +0100
On Tue, May 20, 2025 at 09:58:26PM +0100, Alan Third wrote:
> Reverting commit 6ea69fc7340e48cf73df351a544c1d8946395b3d seems to
> make the problem go away. Cairo doesn't use the x_composite_image
> function. It looks like the destination parameter is not always valid.
> I had a look and it's usually populated from FRAME_X_PICTURE (s->f)
> but a quick investigation left me none-the-wiser as to where THAT is
> set and why it might go bad.

In case it's helpful to someone else I'll note that I found this
comment in xterm.c:

      /* Unfortunately, we need to call x_drop_xrender_surfaces for
         _all_ ConfigureNotify events, otherwise we miss some and
         flicker.  Don't try to optimize these calls by looking only
         for size changes: that's not sufficient.  We miss some
         surface invalidations and flicker.  */

x_drop_xrender_surfaces resets FRAME_X_PICTURE(s->f).

My suspicion is that loading modus-operandi is causing some other sort
of event that's been missed that invalidates the surface. I've no idea
what that could be though, as far as I can tell modus-operandi just
sets colours.

Loading other themes doesn't seem to trigger the bug though.

-- 
Alan Third




This bug report was last modified 8 days ago.

Previous Next


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