[xorg-commit-diffs] xc/extras/freetype2/src/type42 t42types.h, NONE, 1.1.6.1 rules.mk, 1.1, 1.1.4.1 t42drivr.c, 1.1.4.1, 1.1.4.2 t42error.h, 1.1, 1.1.4.1 t42objs.c, 1.1.4.1, 1.1.4.2 t42objs.h, 1.1.4.1, 1.1.4.2 t42parse.c, 1.1.4.1, 1.1.4.2 t42parse.h, 1.1, 1.1.4.1

Egbert Eich xorg-commit at pdx.freedesktop.org
Thu Apr 15 03:14:50 PDT 2004


Committed by: eich

Update of /cvs/xorg/xc/extras/freetype2/src/type42
In directory pdx:/home/eich/tstbuild/xc/extras/freetype2/src/type42

Modified Files:
      Tag: XORG-CURRENT
	rules.mk t42drivr.c t42error.h t42objs.c t42objs.h t42parse.c 
	t42parse.h 
Added Files:
      Tag: XORG-CURRENT
	t42types.h 
Log Message:
2004-04-15  Egbert Eich  <eich at freedesktop.org>
        Merged changes from RELEASE-1 branch
	


--- NEW FILE: t42types.h ---
/***************************************************************************/
/*                                                                         */
/*  t42types.h                                                             */
/*                                                                         */
/*    Type 42 font data types (specification only).                        */
/*                                                                         */
/*  Copyright 2002 by Roberto Alameda.                                     */
/*                                                                         */
/*  This file is part of the FreeType project, and may only be used,       */
/*  modified, and distributed under the terms of the FreeType project      */
/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
/*  this file you indicate that you have read the license and              */
/*  understand and accept it fully.                                        */
/*                                                                         */
/***************************************************************************/


#ifndef __T42TYPES_H__
#define __T42TYPES_H__


#include <ft2build.h>
#include FT_FREETYPE_H
#include FT_TYPE1_TABLES_H
#include FT_INTERNAL_TYPE1_TYPES_H
#include FT_INTERNAL_POSTSCRIPT_HINTS_H


FT_BEGIN_HEADER


  typedef struct  T42_FaceRec_
  {
    FT_FaceRec     root;
    T1_FontRec     type1;
    const void*    psnames;
    const void*    psaux;
    const void*    afm_data;
    FT_Byte*       ttf_data;
    FT_ULong       ttf_size;
    FT_Face        ttf_face;
    FT_CharMapRec  charmaprecs[2];
    FT_CharMap     charmaps[2];
    PS_Unicodes    unicode_map;

  } T42_FaceRec, *T42_Face;


FT_END_HEADER

#endif /* __T1TYPES_H__ */


/* END */

Index: rules.mk
===================================================================
RCS file: /cvs/xorg/xc/extras/freetype2/src/type42/rules.mk,v
retrieving revision 1.1
retrieving revision 1.1.4.1
diff -u -d -r1.1 -r1.1.4.1
--- a/rules.mk	14 Nov 2003 16:48:24 -0000	1.1
+++ b/rules.mk	15 Apr 2004 10:14:44 -0000	1.1.4.1
@@ -3,7 +3,7 @@
 #
 
 
-# Copyright 2002 by
+# Copyright 2002, 2003 by
 # David Turner, Robert Wilhelm, and Werner Lemberg.
 #
 # This file is part of the FreeType project, and may only be used, modified,
@@ -15,25 +15,24 @@
 
 # Type42 driver directory
 #
-T42_DIR  := $(SRC_)type42
-T42_DIR_ := $(T42_DIR)$(SEP)
+T42_DIR := $(SRC_DIR)/type42
 
 
 # compilation flags for the driver
 #
-T42_COMPILE := $(FT_COMPILE) $I$(T42_DIR)
+T42_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(T42_DIR))
 
 
 # Type42 driver source
 #
-T42_DRV_SRC := $(T42_DIR_)t42objs.c  \
-               $(T42_DIR_)t42parse.c \
-               $(T42_DIR_)t42drivr.c
+T42_DRV_SRC := $(T42_DIR)/t42objs.c  \
+               $(T42_DIR)/t42parse.c \
+               $(T42_DIR)/t42drivr.c
 
 # Type42 driver headers
 #
 T42_DRV_H := $(T42_DRV_SRC:%.c=%.h) \
-             $(T42_DIR_)t42error.h
+             $(T42_DIR)/t42error.h
 
 
 # Type42 driver object(s)
@@ -41,24 +40,24 @@
 #   T42_DRV_OBJ_M is used during `multi' builds
 #   T42_DRV_OBJ_S is used during `single' builds
 #
-T42_DRV_OBJ_M := $(T42_DRV_SRC:$(T42_DIR_)%.c=$(OBJ_)%.$O)
-T42_DRV_OBJ_S := $(OBJ_)type42.$O
+T42_DRV_OBJ_M := $(T42_DRV_SRC:$(T42_DIR)/%.c=$(OBJ_DIR)/%.$O)
+T42_DRV_OBJ_S := $(OBJ_DIR)/type42.$O
 
 # Type42 driver source file for single build
 #
-T42_DRV_SRC_S := $(T42_DIR_)type42.c
+T42_DRV_SRC_S := $(T42_DIR)/type42.c
 
 
 # Type42 driver - single object
 #
 $(T42_DRV_OBJ_S): $(T42_DRV_SRC_S) $(T42_DRV_SRC) $(FREETYPE_H) $(T42_DRV_H)
-	$(T42_COMPILE) $T$@ $(T42_DRV_SRC_S)
+	$(T42_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $(T42_DRV_SRC_S))
 
 
 # Type42 driver - multiple objects
 #
-$(OBJ_)%.$O: $(T42_DIR_)%.c $(FREETYPE_H) $(T42_DRV_H)
-	$(T42_COMPILE) $T$@ $<
+$(OBJ_DIR)/%.$O: $(T42_DIR)/%.c $(FREETYPE_H) $(T42_DRV_H)
+	$(T42_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
 
 
 # update main driver object lists
@@ -66,4 +65,5 @@
 DRV_OBJS_S += $(T42_DRV_OBJ_S)
 DRV_OBJS_M += $(T42_DRV_OBJ_M)
 
+
 # EOF

Index: t42drivr.c
===================================================================
RCS file: /cvs/xorg/xc/extras/freetype2/src/type42/t42drivr.c,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -u -d -r1.1.4.1 -r1.1.4.2
--- a/t42drivr.c	26 Nov 2003 22:48:28 -0000	1.1.4.1
+++ b/t42drivr.c	15 Apr 2004 10:14:44 -0000	1.1.4.2
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    High-level Type 42 driver interface (body).                          */
 /*                                                                         */
-/*  Copyright 2002 by Roberto Alameda.                                     */
+/*  Copyright 2002, 2003 by Roberto Alameda.                               */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
 /*  modified, and distributed under the terms of the FreeType project      */
@@ -24,10 +24,9 @@
   /* 2) Incremental fonts making use of the GlyphDirectory keyword         */
   /*    will be loaded, but the rendering will be using the TrueType       */
   /*    tables.                                                            */
-  /* 3) The sfnts array is expected to be ASCII, not binary.               */
-  /* 4) As for Type1 fonts, CDevProc is not supported.                     */
-  /* 5) The Metrics dictionary is not supported.                           */
-  /* 6) AFM metrics are not supported.                                     */
+  /* 3) As for Type1 fonts, CDevProc is not supported.                     */
+  /* 4) The Metrics dictionary is not supported.                           */
+  /* 5) AFM metrics are not supported.                                     */
   /*                                                                       */
   /* In other words, this driver supports Type42 fonts derived from        */
   /* TrueType fonts in a non-CID manner, as done by usual conversion       */
@@ -41,11 +40,21 @@
 #include "t42error.h"
 #include FT_INTERNAL_DEBUG_H
 
+#include FT_SERVICE_XFREE86_NAME_H
+#include FT_SERVICE_GLYPH_DICT_H
+#include FT_SERVICE_POSTSCRIPT_NAME_H
+#include FT_SERVICE_POSTSCRIPT_INFO_H
 
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_t42
 
 
+ /*
+  *
+  *  GLYPH DICT SERVICE
+  *
+  */
+
   static FT_Error
   t42_get_glyph_name( T42_Face    face,
                       FT_UInt     glyph_index,
@@ -73,13 +82,6 @@
   }
 
 
-  static const char*
-  t42_get_ps_name( T42_Face  face )
-  {
-    return (const char*)face->type1.font_name;
-  }
-
-
   static FT_UInt
   t42_get_name_index( T42_Face    face,
                       FT_String*  glyph_name )
@@ -100,33 +102,95 @@
   }
 
 
-  static FT_Module_Interface
-  T42_Get_Interface( FT_Driver         driver,
-                     const FT_String*  t42_interface )
+  static FT_Service_GlyphDictRec  t42_service_glyph_dict =
   {
-    FT_UNUSED( driver );
+    (FT_GlyphDict_GetNameFunc)  t42_get_glyph_name,
+    (FT_GlyphDict_NameIndexFunc)t42_get_name_index
+  };
 
-    /* Any additional interface are defined here */
-    if (ft_strcmp( (const char*)t42_interface, "glyph_name" ) == 0 )
-      return (FT_Module_Interface)t42_get_glyph_name;
 
-    if ( ft_strcmp( (const char*)t42_interface, "name_index" ) == 0 )
-      return (FT_Module_Interface)t42_get_name_index;
+ /*
+  *
+  *  POSTSCRIPT NAME SERVICE
+  *
+  */
+
+  static const char*
+  t42_get_ps_font_name( T42_Face  face )
+  {
+    return (const char*)face->type1.font_name;
+  }
+
+
+  static FT_Service_PsFontNameRec  t42_service_ps_font_name =
+  {
+    (FT_PsName_GetFunc)t42_get_ps_font_name
+  };
 
-    if ( ft_strcmp( (const char*)t42_interface, "postscript_name" ) == 0 )
-      return (FT_Module_Interface)t42_get_ps_name;
 
+ /*
+  *
+  *  POSTSCRIPT INFO SERVICE
+  *
+  */
+
+  static FT_Error
+  t42_ps_get_font_info( FT_Face          face,
+                        PS_FontInfoRec*  afont_info )
+  {
+    *afont_info = ((T42_Face)face)->type1.font_info;
     return 0;
   }
 
 
+  static FT_Int
+  t42_ps_has_glyph_names( FT_Face  face )
+  {
+    FT_UNUSED( face );
+    return 1;
+  }
+
+
+  static const FT_Service_PsInfoRec  t42_service_ps_info =
+  {
+    (PS_GetFontInfoFunc)  t42_ps_get_font_info,
+    (PS_HasGlyphNamesFunc)t42_ps_has_glyph_names
+  };
+
+
+ /*
+  *
+  *  SERVICE LIST
+  *
+  */
+
+  static const FT_ServiceDescRec  t42_services[] =
+  {
+    { FT_SERVICE_ID_GLYPH_DICT,           &t42_service_glyph_dict },
+    { FT_SERVICE_ID_POSTSCRIPT_FONT_NAME, &t42_service_ps_font_name },
+    { FT_SERVICE_ID_POSTSCRIPT_INFO,      &t42_service_ps_info },
+    { FT_SERVICE_ID_XF86_NAME,            FT_XF86_FORMAT_TYPE_42 },
+    { NULL, NULL }
+  };
+
+
+  static FT_Module_Interface
+  T42_Get_Interface( FT_Driver         driver,
+                     const FT_String*  t42_interface )
+  {
+    FT_UNUSED( driver );
+
+    return ft_service_list_lookup( t42_services, t42_interface );
+  }
+
+
   const FT_Driver_ClassRec  t42_driver_class =
   {
     {
-      ft_module_font_driver      |
-      ft_module_driver_scalable  |
+      FT_MODULE_FONT_DRIVER       |
+      FT_MODULE_DRIVER_SCALABLE   |
 #ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
-      ft_module_driver_has_hinter,
+      FT_MODULE_DRIVER_HAS_HINTER,
 #else
       0,
 #endif

Index: t42error.h
===================================================================
RCS file: /cvs/xorg/xc/extras/freetype2/src/type42/t42error.h,v
retrieving revision 1.1
retrieving revision 1.1.4.1
diff -u -d -r1.1 -r1.1.4.1
--- a/t42error.h	14 Nov 2003 16:48:24 -0000	1.1
+++ b/t42error.h	15 Apr 2004 10:14:44 -0000	1.1.4.1
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    Type 42 error codes (specification only).                            */
 /*                                                                         */
-/*  Copyright 2002 by                                                      */
+/*  Copyright 2002, 2003 by                                                */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
@@ -30,7 +30,7 @@
 #undef __FTERRORS_H__
 
 #define FT_ERR_PREFIX  T42_Err_
-#define FT_ERR_BASE    FT_Mod_Err_T42
+#define FT_ERR_BASE    FT_Mod_Err_Type42
 
 #include FT_ERRORS_H
 

Index: t42objs.c
===================================================================
RCS file: /cvs/xorg/xc/extras/freetype2/src/type42/t42objs.c,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -u -d -r1.1.4.1 -r1.1.4.2
--- a/t42objs.c	26 Nov 2003 22:48:28 -0000	1.1.4.1
+++ b/t42objs.c	15 Apr 2004 10:14:44 -0000	1.1.4.2
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    Type 42 objects manager (body).                                      */
 /*                                                                         */
-/*  Copyright 2002 by Roberto Alameda.                                     */
+/*  Copyright 2002, 2003 by Roberto Alameda.                               */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
 /*  modified, and distributed under the terms of the FreeType project      */
@@ -53,7 +53,8 @@
     if ( error )
       goto Exit;
 
-    error = t42_parse_dict( face, &loader, parser->base_dict, parser->base_len );
+    error = t42_parse_dict( face, &loader,
+                            parser->base_dict, parser->base_len );
 
     if ( type1->font_type != 42 )
     {
@@ -65,7 +66,8 @@
     /* to the Type1 data                                    */
     type1->num_glyphs = loader.num_glyphs;
 
-    if ( !loader.charstrings.init ) {
+    if ( !loader.charstrings.init )
+    {
       FT_ERROR(( "T42_Open_Face: no charstrings array in face!\n" ));
       error = T42_Err_Invalid_File_Format;
     }
@@ -121,8 +123,10 @@
               if ( ft_strcmp( (const char*)".notdef",
                               (const char*)glyph_name ) != 0 )
               {
-                if ( charcode < min_char ) min_char = charcode;
-                if ( charcode > max_char ) max_char = charcode;
+                if ( charcode < min_char )
+                  min_char = charcode;
+                if ( charcode > max_char )
+                  max_char = charcode;
               }
               break;
             }
@@ -149,10 +153,12 @@
                  FT_Int         num_params,
                  FT_Parameter*  params )
   {
-    FT_Error          error;
-    PSNames_Service   psnames;
-    PSAux_Service     psaux;
-    FT_Face           root    = (FT_Face)&face->root;
+    FT_Error            error;
+    FT_Service_PsCMaps  psnames;
+    PSAux_Service       psaux;
+    FT_Face             root  = (FT_Face)&face->root;
+    T1_Font             type1 = &face->type1;
+    PS_FontInfo         info  = &type1->font_info;
 
     FT_UNUSED( num_params );
     FT_UNUSED( params );
@@ -163,9 +169,8 @@
     face->ttf_face       = NULL;
     face->root.num_faces = 1;
 
-    face->psnames = FT_Get_Module_Interface( FT_FACE_LIBRARY( face ),
-                                             "psnames" );
-    psnames = (PSNames_Service)face->psnames;
+    FT_FACE_FIND_GLOBAL_SERVICE( face, psnames, POSTSCRIPT_CMAPS );
+    face->psnames = psnames;
 
     face->psaux = FT_Get_Module_Interface( FT_FACE_LIBRARY( face ),
                                            "psaux" );
@@ -188,12 +193,12 @@
       goto Exit;
     }
 
-    /* Now, load the font program into the face object */
+    /* Now load the font program into the face object */
 
     /* Init the face object fields */
     /* Now set up root face fields */
 
-    root->num_glyphs   = face->type1.num_glyphs;
+    root->num_glyphs   = type1->num_glyphs;
     root->num_charmaps = 0;
     root->face_index   = face_index;
 
@@ -201,42 +206,52 @@
     root->face_flags |= FT_FACE_FLAG_HORIZONTAL;
     root->face_flags |= FT_FACE_FLAG_GLYPH_NAMES;
 
-    if ( face->type1.font_info.is_fixed_pitch )
+    if ( info->is_fixed_pitch )
       root->face_flags |= FT_FACE_FLAG_FIXED_WIDTH;
 
     /* XXX: TODO -- add kerning with .afm support */
 
     /* get style name -- be careful, some broken fonts only */
     /* have a `/FontName' dictionary entry!                 */
-    root->family_name = face->type1.font_info.family_name;
+    root->family_name = info->family_name;
+    /* assume "Regular" style if we don't know better */
+    root->style_name = (char *)"Regular";
     if ( root->family_name )
     {
-      char*  full   = face->type1.font_info.full_name;
+      char*  full   = info->full_name;
       char*  family = root->family_name;
 
 
       if ( full )
       {
-        while ( *family && *full == *family )
+        while ( *full )
         {
-          family++;
-          full++;
+          if ( *full == *family )
+          {
+            family++;
+            full++;
+          }
+          else
+          {
+            if ( *full == ' ' || *full == '-' )
+              full++;
+            else if ( *family == ' ' || *family == '-' )
+              family++;
+            else
+            {
+              if ( !*family )
+                root->style_name = full;
+              break;
+            }
+          }
         }
-
-        root->style_name = ( *full == ' ' ? full + 1
-                                          : (char *)"Regular" );
       }
-      else
-        root->style_name = (char *)"Regular";
     }
     else
     {
       /* do we have a `/FontName'? */
-      if ( face->type1.font_name )
-      {
-        root->family_name = face->type1.font_name;
-        root->style_name  = (char *)"Regular";
-      }
+      if ( type1->font_name )
+        root->family_name = type1->font_name;
     }
 
     /* no embedded bitmap support */
@@ -266,15 +281,15 @@
     root->max_advance_width  = face->ttf_face->max_advance_width;
     root->max_advance_height = face->ttf_face->max_advance_height;
 
-    root->underline_position  = face->type1.font_info.underline_position;
-    root->underline_thickness = face->type1.font_info.underline_thickness;
+    root->underline_position  = (FT_Short)( info->underline_position >> 16 );
+    root->underline_thickness = (FT_Short)( info->underline_thickness >> 16 );
 
     root->internal->max_points   = 0;
     root->internal->max_contours = 0;
 
     /* compute style flags */
     root->style_flags = 0;
-    if ( face->type1.font_info.italic_angle )
+    if ( info->italic_angle )
       root->style_flags |= FT_STYLE_FLAG_ITALIC;
 
     if ( face->ttf_face->style_flags & FT_STYLE_FLAG_BOLD )
@@ -304,7 +319,7 @@
         charmap.platform_id = 7;
         clazz               = NULL;
 
-        switch ( face->type1.encoding_type )
+        switch ( type1->encoding_type )
         {
         case T1_ENCODING_TYPE_STANDARD:
           charmap.encoding    = FT_ENCODING_ADOBE_STANDARD;
@@ -339,7 +354,7 @@
 
 #if 0
         /* Select default charmap */
-        if (root->num_charmaps)
+        if ( root->num_charmaps )
           root->charmap = root->charmaps[0];
 #endif
       }
@@ -438,8 +453,6 @@
   }
 
 
-
-
   FT_LOCAL_DEF( FT_Error )
   T42_Size_Init( T42_Size  size )
   {
@@ -532,7 +545,7 @@
     T42_Face  t42face = (T42_Face)face;
 
 
-    FT_Activate_Size(size->ttsize);
+    FT_Activate_Size( size->ttsize );
 
     return FT_Set_Char_Size( t42face->ttf_face,
                              char_width,
@@ -551,7 +564,7 @@
     T42_Face  t42face = (T42_Face)face;
 
 
-    FT_Activate_Size(size->ttsize);
+    FT_Activate_Size( size->ttsize );
 
     return FT_Set_Pixel_Sizes( t42face->ttf_face,
                                pixel_width,
@@ -587,7 +600,7 @@
   FT_LOCAL_DEF( FT_Error )
   T42_GlyphSlot_Load( FT_GlyphSlot  glyph,
                       FT_Size       size,
-                      FT_Int        glyph_index,
+                      FT_UInt       glyph_index,
                       FT_Int32      load_flags )
   {
     FT_Error         error;

Index: t42objs.h
===================================================================
RCS file: /cvs/xorg/xc/extras/freetype2/src/type42/t42objs.h,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -u -d -r1.1.4.1 -r1.1.4.2
--- a/t42objs.h	26 Nov 2003 22:48:28 -0000	1.1.4.1
+++ b/t42objs.h	15 Apr 2004 10:14:45 -0000	1.1.4.2
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    Type 42 objects manager (specification).                             */
 /*                                                                         */
-/*  Copyright 2002 by Roberto Alameda.                                     */
+/*  Copyright 2002, 2003 by Roberto Alameda.                               */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
 /*  modified, and distributed under the terms of the FreeType project      */
@@ -22,10 +22,10 @@
 #include FT_FREETYPE_H
 #include FT_TYPE1_TABLES_H
 #include FT_INTERNAL_TYPE1_TYPES_H
-#include FT_INTERNAL_TYPE42_TYPES_H
+#include "t42types.h"
 #include FT_INTERNAL_OBJECTS_H
 #include FT_INTERNAL_DRIVER_H
-#include FT_INTERNAL_POSTSCRIPT_NAMES_H
+#include FT_SERVICE_POSTSCRIPT_CMAPS_H
 #include FT_INTERNAL_POSTSCRIPT_HINTS_H
 
 
@@ -102,7 +102,7 @@
   FT_LOCAL( FT_Error )
   T42_GlyphSlot_Load( FT_GlyphSlot  glyph,
                       FT_Size       size,
-                      FT_Int        glyph_index,
+                      FT_UInt       glyph_index,
                       FT_Int32      load_flags );
 
   FT_LOCAL( void )

Index: t42parse.c
===================================================================
RCS file: /cvs/xorg/xc/extras/freetype2/src/type42/t42parse.c,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -u -d -r1.1.4.1 -r1.1.4.2
--- a/t42parse.c	26 Nov 2003 22:48:28 -0000	1.1.4.1
+++ b/t42parse.c	15 Apr 2004 10:14:45 -0000	1.1.4.2
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    Type 42 font parser (body).                                          */
 /*                                                                         */
-/*  Copyright 2002 by Roberto Alameda.                                     */
+/*  Copyright 2002, 2003 by Roberto Alameda.                               */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
 /*  modified, and distributed under the terms of the FreeType project      */
@@ -34,24 +34,16 @@
 
 
[...1221 lines suppressed...]
           }
         }
       }
+      else
+        T1_Skip_PS_Token( parser );
+
+      T1_Skip_Spaces( parser );
     }
+
     return parser->root.error;
   }
 
@@ -985,6 +1105,7 @@
     T1_Release_Table( &loader->encoding_table );
     T1_Release_Table( &loader->charstrings );
     T1_Release_Table( &loader->glyph_names );
+    T1_Release_Table( &loader->swap_table );
 
     /* finalize parser */
     t42_parser_done( parser );

Index: t42parse.h
===================================================================
RCS file: /cvs/xorg/xc/extras/freetype2/src/type42/t42parse.h,v
retrieving revision 1.1
retrieving revision 1.1.4.1
diff -u -d -r1.1 -r1.1.4.1
--- a/t42parse.h	14 Nov 2003 16:48:24 -0000	1.1
+++ b/t42parse.h	15 Apr 2004 10:14:45 -0000	1.1.4.1
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    Type 42 font parser (specification).                                 */
 /*                                                                         */
-/*  Copyright 2002 by Roberto Alameda.                                     */
+/*  Copyright 2002, 2003 by Roberto Alameda.                               */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
 /*  modified, and distributed under the terms of the FreeType project      */
@@ -31,9 +31,9 @@
     FT_Stream     stream;
 
     FT_Byte*      base_dict;
-    FT_Int        base_len;
+    FT_Long       base_len;
 
-    FT_Byte       in_memory;
+    FT_Bool       in_memory;
 
   } T42_ParserRec, *T42_Parser;
 
@@ -42,13 +42,14 @@
   {
     T42_ParserRec  parser;          /* parser used to read the stream */
 
-    FT_Int         num_chars;       /* number of characters in encoding */
+    FT_UInt        num_chars;       /* number of characters in encoding */
     PS_TableRec    encoding_table;  /* PS_Table used to store the       */
                                     /* encoding character names         */
 
-    FT_Int         num_glyphs;
+    FT_UInt        num_glyphs;
     PS_TableRec    glyph_names;
     PS_TableRec    charstrings;
+    PS_TableRec    swap_table;      /* For moving .notdef glyph to index 0. */
 
   } T42_LoaderRec, *T42_Loader;
 




More information about the xorg-commit-diffs mailing list