--- Begin Message ---
Subject: |
Re: Looping in redisplay due to font problem |
Date: |
Fri, 03 Oct 2008 10:24:18 +0900 |
User-agent: |
SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.2 Emacs/23.0.60 (i686-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) |
In article <878wt6a7aq.fsf@cyd.mit.edu>, Chong Yidong <cyd@stupidchicken.com>
writes:
> After the 2008-07-09 change to ftfont.c, Emacs can loop during redisplay
> under the following conditions:
> xrdb /dev/null
> emacs -Q fc-list.list [fc-list.list is attached]
> <PageDown>
> <PageDown>
> <PageDown>
> <PageDown>
> Emacs begins looping while in redisplay, while displaying the text
> "Corsivo" (the final letter "o" blinks rapidly).
> Strangely enough, I can't reproduce this if I substitute C-v for
> PageDown (?!??!). Also, the bug doesn't show up if there is an X
> resource Emacs.geometry already defined.
> The problem seems to have appeared for the first time during the checkin
> listed below. My tests indicate that the other files involved this
> checkin do not affect the problem.
> Could you see if you can reproduce this problem, and review the code
> changes to see if they may have caused it? Thanks!
That's a very strange phenomenon. But, I can't reproduce
it. When I hit PageDown four times, the top line is "Luxi
Sans:style=Regular", and "Corsivo" appears on the 9th line
(logically 8th line because of continuation).
In my case, this font is selected for the default case:
-bitstream-Bitstream Vera Sans
Mono-normal-normal-normal-*-16-*-*-*-m-0-iso10646-1
Which font is selected in your case?
And, what does "Emacs begins looping while in redisplay"
exactly mean?
---
Kenichi Handa
handa@ni.aist.go.jp
--- End Message ---
--- Begin Message ---
Subject: |
Re: Looping in redisplay due to font problem |
Date: |
Thu, 09 Oct 2008 12:45:45 -0400 |
I found the bug: it's an infloop in update_text_area which can happen
when the pixel width of the current glyph is smaller than the lbearing
of the next glyph. I'm not sure why the bug was triggered only under
the situation I described; maybe, only that exact geometry and font
produced the numbers leading to the infloop.
I've checked in a fix.
--- End Message ---