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

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

bug#1070: Looping in redisplay due to font problem


From: Chong Yidong
Subject: bug#1070: Looping in redisplay due to font problem
Date: Thu, 02 Oct 2008 19:47:25 -0400

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!


2008-07-09  Kenichi Handa  <handa@m17n.org>

        * ftfont.c (struct ftfont_info): New member index, delete member
        fc_charset_idx.  Make the member order compatible with struct
        xftfont_info.
        (fc_charset_table): Change charset names to registry names.
        (ftfont_pattern_entity): Delete the args registry and
        fc_charset_idx.  Change the value of :font-entity property
        to (FONTNAME . INDEX).  Always set :registry property to
        `iso10646-1'.
        (struct ftfont_cache_data): New struct.
        (ftfont_lookup_cache): New arg for_face.
        (ftfont_get_fc_charset, ftfont_get_otf): New functions.
        (ftfont_driver): Set the member otf_capability.
        (ftfont_get_charset): Adjust it for the change of
        fc_charset_table.
        (OTF_TAG_SYM): New macro.
        (ftfont_spec_pattern): Delete the arg fc_charset_idx.  Adjust it
        for the change of fc_charset_table.
        (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
        ftfont_pattern_entity.  Add FC_INDEX to objset.
        (ftfont_match): Adjust it for the change of ftfont_spec_pattern
        and ftfont_pattern_entity.
        (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
        font_make_object, struct ftfont_info.
        (ftfont_has_char): Use ftfont_get_fc_charset.
        (ftfont_otf_features, ftfont_otf_capability): New functions.
        (ftfont_shape): Use ftfont_get_otf.
        (ftfont_text_extents): Fix initial setting of metrics.






reply via email to

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