freetype
[Top][All Lists]
Advanced

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

Re: [ft] Failure in loading U+033F in DejaVu fonts


From: suzuki toshiya
Subject: Re: [ft] Failure in loading U+033F in DejaVu fonts
Date: Tue, 10 May 2016 11:19:04 +0900
User-agent: Mozilla-Thunderbird 2.0.0.24 (X11/20100329)

Hi,

It seems that the changeset 758d55e522eb426dad2f15adc1d945f7896d7b29
(between 2.6.1 and 2.6.2) is the point that FT2 starts the complain
against DejaVu. The changset was introduced to detected looped reference.

Checking TTX disassmbler output, DejaVu font has no looped reference
for U+033F.

uni033F refers uni203E twice

   <TTGlyph name="uni033F" xMin="-1044" yMin="1082" xMax="20" yMax="1547">
     <component glyphName="uni203E" x="-1024" y="0" flags="0x1004"/>
     <component glyphName="uni203E" x="-1024" y="-322" flags="0x1004"/>
   </TTGlyph>

uni203E refers "underscore"
   <TTGlyph name="uni203E" xMin="-20" yMin="1404" xMax="1044" yMax="1547">
     <component glyphName="underscore" x="0" y="1887" flags="0x1004"/>
   </TTGlyph>

"underscore" is self-standing.

   <TTGlyph name="underscore" xMin="-20" yMin="-483" xMax="1044" yMax="-340">
     <contour>
       <pt x="1044" y="-340" on="1"/>
       <pt x="1044" y="-483" on="1"/>
       <pt x="-20" y="-483" on="1"/>
       <pt x="-20" y="-340" on="1"/>
     </contour>
     <instructions><assembly>
         PUSHB[ ]  /* 6 values pushed */
         0 169 1 0 2 4
         SRP0[ ]
         MDRP[00100]
         MDRP[00100]
         IUP[1]
         SVTCA[0]
         MDRP[10100]
         MIRP[01100]
         IUP[0]
       </assembly></instructions>
   </TTGlyph>

I guess the composite glyphs referring same component twice or more
can cause this warning. I will try to fix it...

Regards,
mpsuzuki


Khaled Hosny wrote:
I just noticed that FreeType 2.6.3 (didn’t try older versions), fails to
load the glyph for U+033F in all DejaVu fonts. Trying with ftview:

$ FT2_DEBUG="any:2" ftview -m "̿" 100 DejaVuSans.ttf

I get an infinite loop of:

TT_Load_Glyph: glyph index 752
TT_Load_Composite_Glyph: infinite recursion detected

I “think” the code in question src/truetype/ttgload.c:1653 is confused
by the fact that the two components refer to the same glyph, as I don’t
see where is the infinite recursion. But I’m not really sure, it can
very well be indeed a bug in the font. Any ideas?

Regards,
Khaled

_______________________________________________
Freetype mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/freetype



reply via email to

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