From: YeshunYe yeyeshun@uniontech.com
If the `FT_MULFIX_ASSEMBLER` macro is not used during the compilation of FreeType, unsigned extension to `FT_Fixed` will cause `FT_MulFix` to produce incorrect results.
Signed-off-by: YeshunYe yeyeshun@uniontech.com --- dlls/win32u/freetype.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/win32u/freetype.c b/dlls/win32u/freetype.c index d1e46a681ea..3c1eb6740a3 100644 --- a/dlls/win32u/freetype.c +++ b/dlls/win32u/freetype.c @@ -544,7 +544,7 @@ static inline FT_Fixed FT_FixedFromFloat(double f) */ static inline FT_Fixed FT_FixedFromFIXED(FIXED f) { - return (FT_Fixed)((int)f.value << 16 | (unsigned int)f.fract); + return (FT_Fixed)(int)((int)f.value << 16 | (unsigned int)f.fract); }
static BOOL is_hinting_enabled(void)