[PATCH] dlls/gdi32/fretype.c: Avoid division by zero.

Sam Edwards cfsworks at gmail.com
Sun May 5 17:27:30 CDT 2013


On 05/04/2013 10:38 PM, Max TenEyck Woodbury wrote:
>
> $ grep ' has tmHeight=0, aveWidth=' 201305055-make-test-native.log
> err:font:get_text_metrics Font named 'Emmentaler-Brace' has 
> tmHeight=0, aveWidth=3!
> err:font:get_text_metrics Font named 'Emmentaler-Brace' has 
> tmHeight=0, aveWidth=3!
> err:font:get_text_metrics Font named 'Emmentaler-Brace' has 
> tmHeight=0, aveWidth=3!
> err:font:get_text_metrics Font named 'Emmentaler-Brace' has 
> tmHeight=0, aveWidth=3!
> err:font:get_text_metrics Font named 'RiordonFancy' has tmHeight=0, 
> aveWidth=0!
>


The Emmentaler-Brace font is part of the LilyPond music engraving 
program, so I was able to track it down without too much effort.

On both Windows (XP) and Wine, the .otf loads without any trouble. When 
calling CreateFontIndirect with lfHeight of 1-9, the 
tm{Height,Ascent,Descent} are, in fact, 0 on both platforms. lfHeight 
values of 10 or greater produce nonzero values for 
tm{Height,Ascent,Descent}.

So, Wine's font loader seems to be working appropriately and thus the 
sane thing to do is to make sure tmHeight=0 is handled gracefully.

As for RiordonFancy, I don't know, but aveWidth=0 in that case, so that 
doesn't really affect us here.



More information about the wine-devel mailing list