bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#1076: marked as done (Looping in redisplay due to font problem)


From: Emacs bug Tracking System
Subject: bug#1076: marked as done (Looping in redisplay due to font problem)
Date: Thu, 9 Oct 2008 09:50:04 -0700

Your message dated Thu, 09 Oct 2008 12:45:45 -0400
with message-id <873aj5lnt2.fsf@cyd.mit.edu>
and subject line Re: Looping in redisplay due to font problem
has caused the Emacs bug report #1070,
regarding Looping in redisplay due to font problem
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact don@donarmstrong.com
immediately.)


-- 
1070: http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=1070
Emacs Bug Tracking System
Contact don@donarmstrong.com with problems
--- Begin Message --- Subject: Re: Looping in redisplay due to font problem Date: Fri, 03 Oct 2008 12:18:18 -0400 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux)
Kenichi Handa <handa@m17n.org> writes:

> 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?

C-u C-x = gives

-unknown-DejaVu Sans Mono-normal-normal-normal-*-16-*-*-*-m-0-iso10646-1

> And, what does "Emacs begins looping while in redisplay" exactly mean?

Emacs is unresponsive to any further input, and the character "o" in
"Corsivo" flickers.  Interrupting the loop in gdb gives the following
backtrace.  It seems to be stuck in an Xft function.

#0  0x00007f54662e1433 in select () from /lib/libc.so.6
#1  0x00007f546403b2b6 in ?? () from /usr/lib/libxcb.so.1
#2  0x00007f546403b8eb in ?? () from /usr/lib/libxcb.so.1
#3  0x00007f546403c050 in xcb_send_request () from /usr/lib/libxcb.so.1
#4  0x00007f5466e71f1a in _XPutXCBBuffer () from /usr/lib/libX11.so.6
#5  0x00007f5466e72267 in ?? () from /usr/lib/libX11.so.6
#6  0x00007f54650be5a3 in XRenderFillRectangle () from /usr/lib/libXrender.so.1
#7  0x00007f5466c1f5b1 in XftDrawRect () from /usr/lib/libXft.so.2
#8  0x0000000000656080 in xftfont_draw (s=0x7fff725843b0, from=0, to=1, x=100, 
    y=175, with_background=1) at xftfont.c:549
#9  0x00000000004e0268 in x_draw_glyph_string_foreground (s=0x7fff725843b0)
    at xterm.c:1316
#10 0x00000000004e374c in x_draw_glyph_string (s=0x7fff725843b0)
    at xterm.c:2708
#11 0x00000000004616f1 in draw_glyphs (w=0x17ec430, x=110, row=0x1f49b20, 
    area=TEXT_AREA, start=7, end=8, hl=DRAW_NORMAL_TEXT, overlaps=0)
    at xdisp.c:20504
#12 0x0000000000466ec1 in x_write_glyphs (start=0x145f748, len=1)
    at xdisp.c:21913
#13 0x0000000000418fa4 in update_text_area (w=0x17ec430, vpos=8)
    at dispnew.c:4584
...



--- 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 ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]