Subject: Re: bug#61667: 29.0.60; Failure to redisplay

From: Dmitry Gutov <[email-masked]>
Date: Fri, 3 Mar 2023 15:44:03 +0200

On 03/03/2023 02:54, Po Lu wrote:

>> So I went back to the previous Emacs versions.
>>
>> This MRE:
>>
>>    src/emacs -Q --eval "(tool-bar-mode -1)" --eval "(menu-bar-mode -1)"
>>    --eval "(scroll-bar-mode -1)" --eval "(global-set-key \"a\" (lambda
>>    () (interactive) (insert \"!\") (redisplay) (find-file
>>    \"xassociations.rb\") ))" --eval "(add-hook 'find-file-hook
>>    #'redisplay t)" --eval "(blink-cursor-mode -1 )" --eval "(setq
>>    frame-title-format \"aaa\")"
>>
>>    Press 'a'. See if the buffer is displayed after a delay.
> 
> Could you send me xassociations.rb?  I can't reproduce this with any
> file of my own.

Attached, though this doesn't seem to depend on the exact file. E.g., I 
reproduced this bug (indefinitely delayed refresh) just today with 
src/alloc.c a few times.

>> --eval "(modify-frame-parameters nil '((undecorated . t)))", OTOH, we
>>    can also cross out from the list of fixes: the problem still happens
>>    with it, though seemingly less often (first repro at the 15th try).
> 
> OK, thanks.  Damned blink-cursor-mode!  Does the frame still refresh
> when you hover over the title bar buttons?

If there is a title bar, and there are buttons, yes, always.

Also, sometimes the frame refreshes right away as soon as I move the 
mouse over its border. Sometimes, however, I can move the mouse over it 
for a while, and refresh happens only when hovering over the title bar 
buttons. Or over the mode-line. Or pressing some button on the keyboard, 
of course.

> Also, since we now know blink-cursor-mode was previously screwing with
> the results, would you please try some other window manager again and
> see if the problem reproduces without GNOME?

Tried again with WindowMaker, couldn't reproduce there still. It's still 
working kind of sluggishly, though. Also tried installing Xfce4, but 
there seems to be some integration problem: it's not possible to log 
into it from GDM (journalctl shows some errors about it trying to launch 
its own session manager and failing because of GDM already running).

I've also tried to reproduce the error with a Lucid build of Emacs 29 
under GNOME -- never hit the problem once.