aboutsummaryrefslogtreecommitdiff
path: root/freetype/src/base/basepic.c
diff options
context:
space:
mode:
Diffstat (limited to 'freetype/src/base/basepic.c')
-rw-r--r--freetype/src/base/basepic.c40
1 files changed, 28 insertions, 12 deletions
diff --git a/freetype/src/base/basepic.c b/freetype/src/base/basepic.c
index d754eb1b0..5268e7c67 100644
--- a/freetype/src/base/basepic.c
+++ b/freetype/src/base/basepic.c
@@ -4,7 +4,7 @@
/* */
/* The FreeType position independent code services for base. */
/* */
-/* Copyright 2009 by */
+/* Copyright 2009, 2012 by */
/* Oran Agra and Mickey Gabel. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -21,14 +21,22 @@
#include FT_INTERNAL_OBJECTS_H
#include "basepic.h"
+
#ifdef FT_CONFIG_OPTION_PIC
/* forward declaration of PIC init functions from ftglyph.c */
- void FT_Init_Class_ft_outline_glyph_class( FT_Glyph_Class* clazz );
- void FT_Init_Class_ft_bitmap_glyph_class( FT_Glyph_Class* clazz );
+ void
+ FT_Init_Class_ft_outline_glyph_class( FT_Glyph_Class* clazz );
- /* forward declaration of PIC init function from ftrfork.c (not modularized) */
- void FT_Init_Table_raccess_guess_table( ft_raccess_guess_rec* record );
+ void
+ FT_Init_Class_ft_bitmap_glyph_class( FT_Glyph_Class* clazz );
+
+#ifdef FT_CONFIG_OPTION_MAC_FONTS
+ /* forward declaration of PIC init function from ftrfork.c */
+ /* (not modularized) */
+ void
+ FT_Init_Table_raccess_guess_table( ft_raccess_guess_rec* record );
+#endif
/* forward declaration of PIC init functions from ftinit.c */
FT_Error
@@ -37,14 +45,18 @@
void
ft_destroy_default_module_classes( FT_Library library );
+
void
ft_base_pic_free( FT_Library library )
{
FT_PIC_Container* pic_container = &library->pic_container;
- FT_Memory memory = library->memory;
+ FT_Memory memory = library->memory;
+
+
if ( pic_container->base )
{
- /* Destroy default module classes (in case FT_Add_Default_Modules was used) */
+ /* destroy default module classes */
+ /* (in case FT_Add_Default_Modules was used) */
ft_destroy_default_module_classes( library );
FT_FREE( pic_container->base );
@@ -57,9 +69,10 @@
ft_base_pic_init( FT_Library library )
{
FT_PIC_Container* pic_container = &library->pic_container;
- FT_Error error = FT_Err_Ok;
- BasePIC* container;
- FT_Memory memory = library->memory;
+ FT_Error error = FT_Err_Ok;
+ BasePIC* container = NULL;
+ FT_Memory memory = library->memory;
+
/* allocate pointer, clear and set global container pointer */
if ( FT_ALLOC ( container, sizeof ( *container ) ) )
@@ -72,13 +85,16 @@
if ( error )
goto Exit;
- /* initialize pointer table - this is how the module usually expects this data */
+ /* initialize pointer table - */
+ /* this is how the module usually expects this data */
FT_Init_Class_ft_outline_glyph_class(
&container->ft_outline_glyph_class );
FT_Init_Class_ft_bitmap_glyph_class(
&container->ft_bitmap_glyph_class );
+#ifdef FT_CONFIG_OPTION_MAC_FONTS
FT_Init_Table_raccess_guess_table(
- (ft_raccess_guess_rec*)&container->ft_raccess_guess_table);
+ (ft_raccess_guess_rec*)&container->ft_raccess_guess_table );
+#endif
Exit:
if( error )