Subject: bug#77988: 31.0.50; No more images after fullscreen and load-theme

From: Manuel Giraud <[email-masked]>
Date: Sun, 29 Jun 2025 17:41:28 +0200

Po Lu <[email-masked]> writes:

> Eli Zaretskii <[email-masked]> writes:
>
>>> > Thanks.  This part looks suspicious:
>>> > 
>>> > >   spec = {
>>> > >     i = 0x14fbfc3
>>> > >   },
>>> > >   dependencies = {
>>> > >     i = 0x14fc273
>>> > >   },
>>> > 
>>> > These are Lisp objects, and in the "good" case they were 64-bit
>>> > values:
>>> > 
>>> > >   spec = {
>>> > >     i = 0x7ffff4627b53
>>> > >   },
>>> > >   dependencies = {
>>> > >     i = 0x7ffff4627673
>>> > >   },
>>> > 
>>> > So it seems somehow the offending commit causes their truncation?  Or
>>> > maybe these Lisp objects were GC'ed (but how could that happen, when
>>> > all the images in the image cache are marked?).
>
> This proved to be a red herring.  I believe the real culprit should have
> been resolved, namely, XRender surfaces were not being invalidated when
> the windows to which they are attached were resized without occasioning
> a matching reconfiguration of their parent windows, which is likelier on
> X toolkit builds than elsewhere.

Thanks Po Lu.  I can confirm that 987cd7012de fixes the issue for lucid
build with the following recipe:

     - M-: (find-file "etc/images/gnus/gnus.svg")
     _ M-: (set-frame-parameter nil 'fullscreen 'fullboth)
     - M-: (load-theme 'modus-operandi)

Why was it not triggered with, said, M-: (load-theme 'tango) is beyond
me.
-- 
Manuel Giraud