From ec54ffde03497234c548ff30e19111c917c6ad05 Mon Sep 17 00:00:00 2001 From: Werner Lemberg Date: Sat, 26 Aug 2000 22:16:44 +0000 Subject: [PATCH] Introducing new error code FT_Err_Invalid_Cache_Handle. Regrouping of error codes. --- include/freetype/fterrors.h | 110 ++++++++++++++++++++---------------- src/cache/ftcimage.c | 5 +- src/cache/ftcmanag.c | 2 +- 3 files changed, 67 insertions(+), 50 deletions(-) diff --git a/include/freetype/fterrors.h b/include/freetype/fterrors.h index c33ecf6f7..4dda5163c 100644 --- a/include/freetype/fterrors.h +++ b/include/freetype/fterrors.h @@ -18,9 +18,9 @@ /*************************************************************************/ /* */ - /* This file is used to define the FreeType error enumeration constants */ + /* This file is used to define the FreeType error enumeration constants. */ /* It can also be used to create an error message table easily with */ - /* something like: */ + /* something like */ /* */ /* { */ /* #undef FTERRORS_H */ @@ -62,91 +62,105 @@ FT_ERROR_START_LIST #endif + /* generic errors */ + FT_ERRORDEF( FT_Err_Ok, 0x0000, \ "no error" ) FT_ERRORDEF( FT_Err_Cannot_Open_Resource, 0x0001, \ - "can't open stream" ) + "cannot open resource" ) FT_ERRORDEF( FT_Err_Unknown_File_Format, 0x0002, \ "unknown file format" ) FT_ERRORDEF( FT_Err_Invalid_File_Format, 0x0003, \ "broken file" ) - - FT_ERRORDEF( FT_Err_Invalid_Argument, 0x0010, \ + FT_ERRORDEF( FT_Err_Invalid_Version, 0x0004, \ + "invalid FreeType version" ) + FT_ERRORDEF( FT_Err_Lower_Module_Version, 0x0005, \ + "module version is too low" ) + FT_ERRORDEF( FT_Err_Invalid_Argument, 0x0006, \ "invalid argument" ) - FT_ERRORDEF( FT_Err_Invalid_Handle, 0x0011, \ - "invalid object handle" ) - FT_ERRORDEF( FT_Err_Invalid_Glyph_Index, 0x0012, \ + FT_ERRORDEF( FT_Err_Unimplemented_Feature, 0x0007, \ + "unimplemented feature" ) + + /* glyph/character errors */ + + FT_ERRORDEF( FT_Err_Invalid_Glyph_Index, 0x0010, \ "invalid glyph index" ) - FT_ERRORDEF( FT_Err_Invalid_Character_Code, 0x0013, \ + FT_ERRORDEF( FT_Err_Invalid_Character_Code, 0x0011, \ "invalid character code" ) - - FT_ERRORDEF( FT_Err_Unimplemented_Feature, 0x0020, \ - "unimplemented feature" ) - FT_ERRORDEF( FT_Err_Invalid_Glyph_Format, 0x0021, \ + FT_ERRORDEF( FT_Err_Invalid_Glyph_Format, 0x0012, \ "unsupported glyph image format" ) - FT_ERRORDEF( FT_Err_Cannot_Render_Glyph, 0x0022, \ + FT_ERRORDEF( FT_Err_Cannot_Render_Glyph, 0x0013, \ "cannot render this glyph format" ) + FT_ERRORDEF( FT_Err_Invalid_Outline, 0x0014, \ + "invalid outline" ) + FT_ERRORDEF( FT_Err_Invalid_Composite, 0x0015, \ + "invalid composite glyph" ) + FT_ERRORDEF( FT_Err_Too_Many_Hints, 0x0016, \ + "too many hints" ) - FT_ERRORDEF( FT_Err_Invalid_Library_Handle, 0x0030, \ + /* handle errors */ + + FT_ERRORDEF( FT_Err_Invalid_Handle, 0x0020, \ + "invalid object handle" ) + FT_ERRORDEF( FT_Err_Invalid_Library_Handle, 0x0021, \ "invalid library handle" ) - FT_ERRORDEF( FT_Err_Invalid_Driver_Handle, 0x0031, \ + FT_ERRORDEF( FT_Err_Invalid_Driver_Handle, 0x0022, \ "invalid module handle" ) - FT_ERRORDEF( FT_Err_Invalid_Face_Handle, 0x0032, \ + FT_ERRORDEF( FT_Err_Invalid_Face_Handle, 0x0023, \ "invalid face handle" ) - FT_ERRORDEF( FT_Err_Invalid_Size_Handle, 0x0033, \ + FT_ERRORDEF( FT_Err_Invalid_Size_Handle, 0x0024, \ "invalid size handle" ) - FT_ERRORDEF( FT_Err_Invalid_Slot_Handle, 0x0034, \ + FT_ERRORDEF( FT_Err_Invalid_Slot_Handle, 0x0025, \ "invalid glyph slot handle" ) - FT_ERRORDEF( FT_Err_Invalid_CharMap_Handle, 0x0035, \ + FT_ERRORDEF( FT_Err_Invalid_CharMap_Handle, 0x0026, \ "invalid charmap handle" ) - FT_ERRORDEF( FT_Err_Invalid_Outline, 0x0036, \ - "invalid outline" ) - FT_ERRORDEF( FT_Err_Invalid_Version, 0x0037, \ - "invalid FreeType version" ) - FT_ERRORDEF( FT_Err_Lower_Module_Version, 0x0038, \ - "module version is too low" ) + FT_ERRORDEF( FT_Err_Invalid_Cache_Handle, 0x0027, \ + "invalid cache manager handle" ) + FT_ERRORDEF( FT_Err_Invalid_Stream_Handle, 0x0028, \ + "invalid stream handle" ) - FT_ERRORDEF( FT_Err_Too_Many_Drivers, 0x0040, \ + /* driver errors */ + + FT_ERRORDEF( FT_Err_Too_Many_Drivers, 0x0030, \ "too many modules" ) - FT_ERRORDEF( FT_Err_Too_Many_Extensions, 0x0041, \ + FT_ERRORDEF( FT_Err_Too_Many_Extensions, 0x0031, \ "too many extensions" ) - FT_ERRORDEF( FT_Err_Out_Of_Memory, 0x0050, \ + /* memory errors */ + + FT_ERRORDEF( FT_Err_Out_Of_Memory, 0x0040, \ "out of memory" ) - FT_ERRORDEF( FT_Err_Unlisted_Object, 0x0051, \ + FT_ERRORDEF( FT_Err_Unlisted_Object, 0x0041, \ "unlisted object" ) - FT_ERRORDEF( FT_Err_Invalid_Stream_Handle, 0x0060, \ - "invalid stream handle" ) - FT_ERRORDEF( FT_Err_Cannot_Open_Stream, 0x0061, \ + /* stream errors */ + + FT_ERRORDEF( FT_Err_Cannot_Open_Stream, 0x0051, \ "cannot open stream" ) - FT_ERRORDEF( FT_Err_Invalid_Stream_Seek, 0x0062, \ + FT_ERRORDEF( FT_Err_Invalid_Stream_Seek, 0x0052, \ "invalid stream seek" ) - FT_ERRORDEF( FT_Err_Invalid_Stream_Skip, 0x0063, \ + FT_ERRORDEF( FT_Err_Invalid_Stream_Skip, 0x0053, \ "invalid stream skip" ) - FT_ERRORDEF( FT_Err_Invalid_Stream_Read, 0x0064, \ + FT_ERRORDEF( FT_Err_Invalid_Stream_Read, 0x0054, \ "invalid stream read" ) - FT_ERRORDEF( FT_Err_Invalid_Stream_Operation, 0x0065, \ + FT_ERRORDEF( FT_Err_Invalid_Stream_Operation, 0x0055, \ "invalid stream operation" ) - FT_ERRORDEF( FT_Err_Invalid_Frame_Operation, 0x0066, \ + FT_ERRORDEF( FT_Err_Invalid_Frame_Operation, 0x0056, \ "invalid frame operation" ) - FT_ERRORDEF( FT_Err_Nested_Frame_Access, 0x0067, \ + FT_ERRORDEF( FT_Err_Nested_Frame_Access, 0x0057, \ "nested frame access" ) - FT_ERRORDEF( FT_Err_Invalid_Frame_Read, 0x0068, \ + FT_ERRORDEF( FT_Err_Invalid_Frame_Read, 0x0058, \ "invalid frame read" ) - FT_ERRORDEF( FT_Err_Invalid_Composite, 0x0070, \ - "invalid composite glyph" ) - FT_ERRORDEF( FT_Err_Too_Many_Hints, 0x0071, \ - "too many hints" ) + /* raster errors */ - FT_ERRORDEF( FT_Err_Raster_Uninitialized, 0x0080, \ + FT_ERRORDEF( FT_Err_Raster_Uninitialized, 0x0060, \ "raster uninitialized" ) - FT_ERRORDEF( FT_Err_Raster_Corrupted, 0x0081, \ + FT_ERRORDEF( FT_Err_Raster_Corrupted, 0x0061, \ "raster corrupted" ) - FT_ERRORDEF( FT_Err_Raster_Overflow, 0x0082, \ + FT_ERRORDEF( FT_Err_Raster_Overflow, 0x0062, \ "raster overflow" ) - FT_ERRORDEF( FT_Err_Raster_Negative_Height, 0x0083, \ + FT_ERRORDEF( FT_Err_Raster_Negative_Height, 0x0063, \ "negative height while rastering" ) /* range 0x400 - 0x4FF is reserved for TrueType specific stuff */ diff --git a/src/cache/ftcimage.c b/src/cache/ftcimage.c index 761703e6b..63d0a16b8 100644 --- a/src/cache/ftcimage.c +++ b/src/cache/ftcimage.c @@ -613,7 +613,10 @@ FTC_Image_Cache cache; - if ( !acache || !manager || !manager->library ) + if ( !manager ) + return FT_Err_Invalid_Cache_Handle; + + if ( !acache || !manager->library ) return FT_Err_Invalid_Argument; *acache = 0; diff --git a/src/cache/ftcmanag.c b/src/cache/ftcmanag.c index 828b63733..740e71d3b 100644 --- a/src/cache/ftcmanag.c +++ b/src/cache/ftcmanag.c @@ -293,7 +293,7 @@ FT_Face* aface ) { if ( !manager ) - return FT_Err_Invalid_Argument; + return FT_Err_Invalid_Cache_Handle; return FT_Lru_Lookup( manager->faces_lru, (FT_LruKey)face_id,