aboutsummaryrefslogtreecommitdiff
path: root/freetype/src/base/ftglyph.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2012-03-12 10:48:52 +0100
committermarha <marha@users.sourceforge.net>2012-03-12 10:48:52 +0100
commit485b633824020c557eb60258e1d36975c8c44770 (patch)
treef48baf73d5a7ae814aae825e7b1405189eab9f0a /freetype/src/base/ftglyph.c
parentc84235ee0d9940e6a779ec306e615603b58a79f2 (diff)
parent41bd254198b8b879a562a85f7dc868c3c0f7fbc1 (diff)
downloadvcxsrv-485b633824020c557eb60258e1d36975c8c44770.tar.gz
vcxsrv-485b633824020c557eb60258e1d36975c8c44770.tar.bz2
vcxsrv-485b633824020c557eb60258e1d36975c8c44770.zip
Merge remote-tracking branch 'origin/released'
Conflicts: freetype/src/base/ftrfork.c freetype/src/cff/cffpic.c freetype/src/pfr/pfrobjs.c freetype/src/winfonts/winfnt.c
Diffstat (limited to 'freetype/src/base/ftglyph.c')
-rw-r--r--freetype/src/base/ftglyph.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/freetype/src/base/ftglyph.c b/freetype/src/base/ftglyph.c
index 39c52bdd9..0cb780388 100644
--- a/freetype/src/base/ftglyph.c
+++ b/freetype/src/base/ftglyph.c
@@ -254,7 +254,7 @@
}
- FT_DEFINE_GLYPH( ft_outline_glyph_class,
+ FT_DEFINE_GLYPH( ft_outline_glyph_class,
sizeof ( FT_OutlineGlyphRec ),
FT_GLYPH_FORMAT_OUTLINE,
@@ -512,42 +512,42 @@
FT_Error error = FT_Err_Ok;
FT_Glyph glyph;
FT_BitmapGlyph bitmap = NULL;
-
const FT_Glyph_Class* clazz;
-#ifdef FT_CONFIG_OPTION_PIC
- FT_Library library = FT_GLYPH( glyph )->library;
-#endif
+ /* FT_BITMAP_GLYPH_CLASS_GET derefers `library' in PIC mode */
+ FT_Library library;
/* check argument */
if ( !the_glyph )
goto Bad;
-
- /* we render the glyph into a glyph bitmap using a `dummy' glyph slot */
- /* then calling FT_Render_Glyph_Internal() */
-
glyph = *the_glyph;
if ( !glyph )
goto Bad;
- clazz = glyph->clazz;
+ clazz = glyph->clazz;
+ library = glyph->library;
+ if ( !library || !clazz )
+ goto Bad;
/* when called with a bitmap glyph, do nothing and return successfully */
if ( clazz == FT_BITMAP_GLYPH_CLASS_GET )
goto Exit;
- if ( !clazz || !clazz->glyph_prepare )
+ if ( !clazz->glyph_prepare )
goto Bad;
+ /* we render the glyph into a glyph bitmap using a `dummy' glyph slot */
+ /* then calling FT_Render_Glyph_Internal() */
+
FT_MEM_ZERO( &dummy, sizeof ( dummy ) );
FT_MEM_ZERO( &dummy_internal, sizeof ( dummy_internal ) );
dummy.internal = &dummy_internal;
- dummy.library = glyph->library;
+ dummy.library = library;
dummy.format = clazz->glyph_format;
/* create result bitmap glyph */
- error = ft_new_glyph( glyph->library, FT_BITMAP_GLYPH_CLASS_GET,
+ error = ft_new_glyph( library, FT_BITMAP_GLYPH_CLASS_GET,
(FT_Glyph*)(void*)&bitmap );
if ( error )
goto Exit;