* Display updates strangely - extra text appears and then disappears
@ 2017-03-26 14:37 Adam Sjøgren
2017-03-26 15:19 ` Eli Zaretskii
0 siblings, 1 reply; 13+ messages in thread
From: Adam Sjøgren @ 2017-03-26 14:37 UTC (permalink / raw)
To: emacs-devel
After this commit ('git bisect' tells me):
commit 8275687bb908174b84021ee15ecd959733cecb9d
Author: Eli Zaretskii <eliz@gnu.org>
Date: Sat Mar 25 16:59:17 2017 +0300
Fix a segfault due to failure to realize some faces
* src/xdisp.c (redisplay_internal): If the frame becomes garbaged
while redisplaying its windows, redisplay all of its windows
again. (Bug#26097)
(init_iterator): When freeing all realized faces on all frames,
reset the 'face_change' flag of the frame whose window we are
about to iterate.
the *Group* buffer in Gnus has extra text where there should be none
when you quit a summer and return. After 0.5-1 seconds the extra text
disappears and the buffer looks normal again.
It also happens sometimes when switching to another virtual desktop and
then back to the desktop with Emacs on it.
Video of the effect:
· https://koldfront.dk/misc/gnu-emacs/redisplay.ogg (8.7 MB)
Best regards,
Adam
--
"Money always takes the place of life" Adam Sjøgren
asjo@koldfront.dk
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 14:37 Display updates strangely - extra text appears and then disappears Adam Sjøgren
@ 2017-03-26 15:19 ` Eli Zaretskii
2017-03-26 15:57 ` Adam Sjøgren
0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2017-03-26 15:19 UTC (permalink / raw)
To: Adam Sjøgren; +Cc: emacs-devel
> From: asjo@koldfront.dk (Adam Sjøgren)
> Date: Sun, 26 Mar 2017 16:37:03 +0200
>
> After this commit ('git bisect' tells me):
>
> commit 8275687bb908174b84021ee15ecd959733cecb9d
> Author: Eli Zaretskii <eliz@gnu.org>
> Date: Sat Mar 25 16:59:17 2017 +0300
>
> Fix a segfault due to failure to realize some faces
>
> * src/xdisp.c (redisplay_internal): If the frame becomes garbaged
> while redisplaying its windows, redisplay all of its windows
> again. (Bug#26097)
> (init_iterator): When freeing all realized faces on all frames,
> reset the 'face_change' flag of the frame whose window we are
> about to iterate.
>
> the *Group* buffer in Gnus has extra text where there should be none
> when you quit a summer and return. After 0.5-1 seconds the extra text
> disappears and the buffer looks normal again.
Thanks. Can you provide a recipe starting from "emacs -Q" to
reproduce the problem? Preferably without virtual desktops.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 15:19 ` Eli Zaretskii
@ 2017-03-26 15:57 ` Adam Sjøgren
2017-03-26 16:23 ` Noam Postavsky
2017-03-26 16:36 ` Eli Zaretskii
0 siblings, 2 replies; 13+ messages in thread
From: Adam Sjøgren @ 2017-03-26 15:57 UTC (permalink / raw)
To: emacs-devel
Eli writes:
> Thanks. Can you provide a recipe starting from "emacs -Q" to
> reproduce the problem? Preferably without virtual desktops.
Yes.
After starting "emacs -Q", evaluate:
(setq gnus-select-method '(nntp "feedbase.org"
(nntp-open-connection-function nntp-open-tls-stream)
(nntp-port-number 563)
(nntp-address "feedbase.org")))
Then do M-x gnus, and enter the server buffer by pressing '^'.
Enter the server browse buffer for feedbase org by pressing 'RET' with
point on its line. Subscribe to, at least, 20 groups (pressing 'u' with
point on each line).
Exit the server browse buffer by pressing 'q' and exit the server buffer
by pressing 'q'. You are in the group buffer now, showing the 20 groups
you subscribed to.
Enter a group by pressing 'RET' with point on it. Open the first article
by pressing 'RET'. The display of the summary (top) buffer is messed up.
Exit the group by pressing 'q'. The group buffer is now messed up:
· https://koldfront.dk/misc/gnu-emacs/redisplay-q-gnus.png
If you press 'g' (to check for new articles), the group buffer is
updated and displays correctly:
· https://koldfront.dk/misc/gnu-emacs/redisplay-q-gnus-g.png
Best regards,
Adam
--
"Oh, we all like motorcycles, to some degree." Adam Sjøgren
asjo@koldfront.dk
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 15:57 ` Adam Sjøgren
@ 2017-03-26 16:23 ` Noam Postavsky
2017-03-26 16:36 ` Eli Zaretskii
1 sibling, 0 replies; 13+ messages in thread
From: Noam Postavsky @ 2017-03-26 16:23 UTC (permalink / raw)
To: Adam Sjøgren; +Cc: Emacs developers
On Sun, Mar 26, 2017 at 11:57 AM, Adam Sjøgren <asjo@koldfront.dk> wrote:
>
> Exit the group by pressing 'q'. The group buffer is now messed up:
>
> · https://koldfront.dk/misc/gnu-emacs/redisplay-q-gnus.png
>
> If you press 'g' (to check for new articles), the group buffer is
> updated and displays correctly:
>
> · https://koldfront.dk/misc/gnu-emacs/redisplay-q-gnus-g.png
>
I guess this is the same problem as what Tino reported:
https://lists.gnu.org/archive/html/emacs-devel/2017-03/msg00688.html
I can't reproduce by following either recipe here (GNU/Linux, both GTK
and Lucid). It probably depends on the fonts installed.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 15:57 ` Adam Sjøgren
2017-03-26 16:23 ` Noam Postavsky
@ 2017-03-26 16:36 ` Eli Zaretskii
2017-03-26 16:54 ` Adam Sjøgren
1 sibling, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2017-03-26 16:36 UTC (permalink / raw)
To: Adam Sjøgren; +Cc: emacs-devel
> From: asjo@koldfront.dk (Adam Sjøgren)
> Date: Sun, 26 Mar 2017 17:57:52 +0200
>
> Eli writes:
>
> > Thanks. Can you provide a recipe starting from "emacs -Q" to
> > reproduce the problem? Preferably without virtual desktops.
>
> Yes.
Thanks. I followed the recipe, but my display is not messed up as you
describe.
Could you perhaps try the recipe after disabling double-buffering,
like this:
M-: (modify-frame-parameters nil '((inhibit-double-buffering . t))) RET
If you repeat the recipe after evaluating the above, does the problem
still appear?
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 16:36 ` Eli Zaretskii
@ 2017-03-26 16:54 ` Adam Sjøgren
2017-03-26 17:24 ` Eli Zaretskii
2017-03-26 17:30 ` Eli Zaretskii
0 siblings, 2 replies; 13+ messages in thread
From: Adam Sjøgren @ 2017-03-26 16:54 UTC (permalink / raw)
To: emacs-devel
Eli writes:
> Thanks. I followed the recipe, but my display is not messed up as you
> describe.
I guess our environments differs in some aspect. Is there anything I
should check?
> Could you perhaps try the recipe after disabling double-buffering,
> like this:
>
> M-: (modify-frame-parameters nil '((inhibit-double-buffering . t))) RET
>
> If you repeat the recipe after evaluating the above, does the problem
> still appear?
The problem still appears after doing that.
I just noticed that C-l also cleans up the display (perhaps not that
surprising).
I just found a simpler recipe to reproduce the problem:
* Start emacs -Q
* Split the window in two: C-x 2
* Unsplit it: C-x 1
The text in the *scratch* buffer is repeated after where the line should
end:
· https://koldfront.dk/misc/gnu-emacs/redisplay-simple.png
and it stays that way until I do something, like editing the buffer or
pressing C-l, for instance. Both with and without double buffering.
Best regards,
Adam
--
"This Interweb thing, it might just catch on, I'm Adam Sjøgren
telling you." asjo@koldfront.dk
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 16:54 ` Adam Sjøgren
@ 2017-03-26 17:24 ` Eli Zaretskii
2017-03-26 17:30 ` Eli Zaretskii
1 sibling, 0 replies; 13+ messages in thread
From: Eli Zaretskii @ 2017-03-26 17:24 UTC (permalink / raw)
To: Adam Sjøgren; +Cc: emacs-devel
> From: asjo@koldfront.dk (Adam Sjøgren)
> Date: Sun, 26 Mar 2017 18:54:51 +0200
>
> Eli writes:
>
> > Thanks. I followed the recipe, but my display is not messed up as you
> > describe.
>
> I guess our environments differs in some aspect. Is there anything I
> should check?
I have no idea what could be responsible for the differences in
behavior.
> > Could you perhaps try the recipe after disabling double-buffering,
> > like this:
> >
> > M-: (modify-frame-parameters nil '((inhibit-double-buffering . t))) RET
> >
> > If you repeat the recipe after evaluating the above, does the problem
> > still appear?
>
> The problem still appears after doing that.
OK.
> I just found a simpler recipe to reproduce the problem:
>
> * Start emacs -Q
> * Split the window in two: C-x 2
> * Unsplit it: C-x 1
>
> The text in the *scratch* buffer is repeated after where the line should
> end:
>
> · https://koldfront.dk/misc/gnu-emacs/redisplay-simple.png
Doesn't happen here, either.
I need to test an alternative solution for the bug whose fix seems to
be causing this.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 16:54 ` Adam Sjøgren
2017-03-26 17:24 ` Eli Zaretskii
@ 2017-03-26 17:30 ` Eli Zaretskii
2017-03-26 17:50 ` Adam Sjøgren
1 sibling, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2017-03-26 17:30 UTC (permalink / raw)
To: Adam Sjøgren; +Cc: emacs-devel
Can you try the patch below, please?
diff --git a/src/xdisp.c b/src/xdisp.c
index 3255052..b04f5f1 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -14139,8 +14139,6 @@ redisplay_internal (void)
winds up calling adjust_frame_glyphs, for example. */
if (!f_garbaged_flag && FRAME_GARBAGED_P (f))
{
- f->garbaged = false;
- fset_redisplay (f);
goto retry_frame;
}
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 17:30 ` Eli Zaretskii
@ 2017-03-26 17:50 ` Adam Sjøgren
2017-03-26 18:08 ` Eli Zaretskii
0 siblings, 1 reply; 13+ messages in thread
From: Adam Sjøgren @ 2017-03-26 17:50 UTC (permalink / raw)
To: emacs-devel
Eli writes:
> Can you try the patch below, please?
>
> diff --git a/src/xdisp.c b/src/xdisp.c
> index 3255052..b04f5f1 100644
> --- a/src/xdisp.c
> +++ b/src/xdisp.c
> @@ -14139,8 +14139,6 @@ redisplay_internal (void)
> winds up calling adjust_frame_glyphs, for example. */
> if (!f_garbaged_flag && FRAME_GARBAGED_P (f))
> {
> - f->garbaged = false;
> - fset_redisplay (f);
> goto retry_frame;
> }
Applying this patch makes the problem go away for me (both in -Q and in
my regular setup).
Thanks!
Adam
--
"Jabba the Hutt meets Rudolf the Reindeer. I Adam Sjøgren
dunno, Mom." asjo@koldfront.dk
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 17:50 ` Adam Sjøgren
@ 2017-03-26 18:08 ` Eli Zaretskii
2017-03-26 18:39 ` Eli Zaretskii
0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2017-03-26 18:08 UTC (permalink / raw)
To: Adam Sjøgren; +Cc: emacs-devel
> From: asjo@koldfront.dk (Adam Sjøgren)
> Date: Sun, 26 Mar 2017 19:50:20 +0200
>
> Applying this patch makes the problem go away for me (both in -Q and in
> my regular setup).
Thanks. Now I just have to make sure this still fixes the original
bug...
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 18:08 ` Eli Zaretskii
@ 2017-03-26 18:39 ` Eli Zaretskii
2017-03-26 20:01 ` Adam Sjøgren
0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2017-03-26 18:39 UTC (permalink / raw)
To: asjo; +Cc: emacs-devel
> Date: Sun, 26 Mar 2017 21:08:00 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: emacs-devel@gnu.org
>
> > From: asjo@koldfront.dk (Adam Sjøgren)
> > Date: Sun, 26 Mar 2017 19:50:20 +0200
> >
> > Applying this patch makes the problem go away for me (both in -Q and in
> > my regular setup).
>
> Thanks. Now I just have to make sure this still fixes the original
> bug...
Done, and the fix pushed. Please test (the actual change is somewhat
different from the patch I asked you to try).
Thanks.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 18:39 ` Eli Zaretskii
@ 2017-03-26 20:01 ` Adam Sjøgren
2017-03-27 2:25 ` Eli Zaretskii
0 siblings, 1 reply; 13+ messages in thread
From: Adam Sjøgren @ 2017-03-26 20:01 UTC (permalink / raw)
To: emacs-devel
Eli writes:
> Done, and the fix pushed. Please test (the actual change is somewhat
> different from the patch I asked you to try).
This works as well, both in -Q and normal setup.
Cheers,
Adam
--
"So this is what being a morning person is like, I Adam Sjøgren
thought. It's like being 80 years old." asjo@koldfront.dk
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Display updates strangely - extra text appears and then disappears
2017-03-26 20:01 ` Adam Sjøgren
@ 2017-03-27 2:25 ` Eli Zaretskii
0 siblings, 0 replies; 13+ messages in thread
From: Eli Zaretskii @ 2017-03-27 2:25 UTC (permalink / raw)
To: Adam Sjøgren; +Cc: emacs-devel
> From: asjo@koldfront.dk (Adam Sjøgren)
> Date: Sun, 26 Mar 2017 22:01:12 +0200
>
> > Done, and the fix pushed. Please test (the actual change is somewhat
> > different from the patch I asked you to try).
>
> This works as well, both in -Q and normal setup.
Great, thanks.
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2017-03-27 2:25 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-26 14:37 Display updates strangely - extra text appears and then disappears Adam Sjøgren
2017-03-26 15:19 ` Eli Zaretskii
2017-03-26 15:57 ` Adam Sjøgren
2017-03-26 16:23 ` Noam Postavsky
2017-03-26 16:36 ` Eli Zaretskii
2017-03-26 16:54 ` Adam Sjøgren
2017-03-26 17:24 ` Eli Zaretskii
2017-03-26 17:30 ` Eli Zaretskii
2017-03-26 17:50 ` Adam Sjøgren
2017-03-26 18:08 ` Eli Zaretskii
2017-03-26 18:39 ` Eli Zaretskii
2017-03-26 20:01 ` Adam Sjøgren
2017-03-27 2:25 ` Eli Zaretskii
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).