src


Log

Author Commit Date CI Message
suzuki toshiya c595c06c 2009-08-01T00:32:12 pcf: Handle the string length by size_t variables.
suzuki toshiya 78ba8a61 2009-08-01T00:32:11 pcf: Fix some data types mismatching with their sources.
suzuki toshiya 52170ac0 2009-08-01T00:32:11 otvalid: Truncate the glyph index to 16-bit.
suzuki toshiya f7c6b116 2009-08-01T00:32:10 cache: Insert explict casts for LP64 systems.
suzuki toshiya ed1d3590 2009-08-01T00:32:10 cache: Fix some data types mismatching with their sources.
suzuki toshiya 3f0f2e46 2009-08-01T00:32:09 XXX_cmap_encoding_char_next() return FT_UInt32 values.
suzuki toshiya 25dba9cf 2009-08-01T00:32:09 truetype: Extend TT_Face->num_locations for broken TTFs.
suzuki toshiya e45e0522 2009-08-01T00:32:08 smooth: Fix some data types mismatching with their sources.
suzuki toshiya c579dc43 2009-08-01T00:32:08 cff: Fix some data types mismatching with their sources.
suzuki toshiya 87054758 2009-08-01T00:32:08 autofit: Fix some data types mismatching with their sources.
suzuki toshiya b5668024 2009-08-01T00:32:07 autofit: Count the size of the memory object by ptrdiff_t.
suzuki toshiya 15dc278c 2009-08-01T00:32:07 autofit: Fix for unused variable `first'.
suzuki toshiya e866cf3f 2009-08-01T00:32:06 Improve bitmap size or pixel variables for 16-bit systems.
suzuki toshiya d3ed6d1b 2009-08-01T00:30:24 psaux: Prevent invalid arguments to afm_parser_read_vals().
suzuki toshiya 0d226c31 2009-08-01T00:30:24 base: Prevent some overflows on LP64 systems.
suzuki toshiya 072e5523 2009-08-01T00:30:23 cff: Cast the long variables to 32-bit for LP64 systems.
suzuki toshiya b61d9289 2009-08-01T00:30:23 pcf: Improve PCF_PropertyRec.value names on LP64 platforms.
suzuki toshiya eae89a7f 2009-08-01T00:30:22 pcf: Fix some data types mismatching with their sources.
suzuki toshiya be41d3e7 2009-08-01T00:30:22 bdf: Improve bdf_property_t.value names for LP64 platforms.
suzuki toshiya 660d6513 2009-08-01T00:30:21 bdf: Fix some data types mismatching with their sources.
suzuki toshiya 38e480b4 2009-08-01T00:30:21 autofit: Improve Unicode range definitions.
suzuki toshiya 93bb1594 2009-08-01T00:30:21 smooth: Fix a data type mismatching with its source.
suzuki toshiya ea5268d2 2009-08-01T00:30:20 smooth: Fix a data type mismatching with its source.
suzuki toshiya f4e1c8bd 2009-08-01T00:30:20 cache: Disable the legacy compatibility if 16-bit system.
suzuki toshiya 2a5831ec 2009-08-01T00:30:19 cache: Check 32-bit glyph index on 16-bit systems.
suzuki toshiya b566d42a 2009-08-01T00:30:19 cache: Fix some data types mismatching with their sources.
suzuki toshiya ebf8e294 2009-08-01T00:30:19 cache: Fix some data types mismatching with their sources.
suzuki toshiya 9f50873a 2009-08-01T00:30:18 cache: Cast NULL to a required function type explicitly.
suzuki toshiya 82ebaa7b 2009-08-01T00:30:17 psnames: Handle Unicode codepoints by FT_UInt32 variables.
suzuki toshiya d200982d 2009-08-01T00:30:17 psaux: Use size_t variable to pass the buffer size.
suzuki toshiya d1ee3785 2009-08-01T00:30:16 type1: Use size_t variable to pass the string length.
suzuki toshiya 7fd7c6f2 2009-08-01T00:30:16 cid: Fix some data types mismatching with their sources.
suzuki toshiya 34c203cd 2009-08-01T00:30:16 cff: Fix for unused variable `rest'.
suzuki toshiya a813cf48 2009-08-01T00:30:15 cff: Fix some data types mismatching with their sources.
suzuki toshiya 2bbcb7ed 2009-08-01T00:30:15 bdf: Fix some data types mismatching with their sources.
suzuki toshiya 763b3949 2009-08-01T00:30:14 sfnt: Count the size of the memory object by ptrdiff_t.
suzuki toshiya f420757c 2009-08-01T00:30:14 lzw: Count the size of the memory object by ptrdiff_t.
suzuki toshiya 88c95bab 2009-08-01T00:30:13 otvalid: Count the table size on memory by ptrdiff_t.
suzuki toshiya 90c7efc8 2009-08-01T00:30:13 otvalid: Prevent an overflow by GPOS/GSUB 32b-bit offset.
suzuki toshiya 95aeebf4 2009-08-01T00:30:13 ftobjs.c: Prevent an overflow in glyph index handling.
suzuki toshiya 2ed9d7fc 2009-08-01T00:30:12 Improve the variable types in raccess_make_file_name().
suzuki toshiya 61fa1b53 2009-08-01T00:30:12 ftpatent.c: Fix for unused variable `error'.
suzuki toshiya f7ecdbc7 2009-08-01T00:30:12 type1: Check invalid string longer than PostScript limit.
suzuki toshiya a8c515d2 2009-08-01T00:30:11 gzip: Use FT2 zcalloc() & zfree() in ftgzip.c by default.
suzuki toshiya 5f43bab8 2009-08-01T00:30:11 gzip: Distinguish PureC from TurboC on MSDOS.
suzuki toshiya 62aa9ec6 2009-08-01T00:29:29 gxvalid: Pass the union by the pointer instead of the value.
Werner Lemberg 7009a6eb 2009-07-29T11:53:13 Fix Redhat bugzilla #513582 and Savannah bug #26849. * src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP) <FTC_INLINE>: Fix aliasing bug.
Werner Lemberg 46e05c44 2009-07-17T22:49:34 Fix Savannah bug #23786. * src/truetype/ttobjs.c (tt_size_init_bytecode): Don't reset x_ppem and y_ppem. Otherwise the `*_CVT_Stretched' functions in ttinterp.c get never called. An anonymous guy suggested this change on Savannah, and it seems to be the right solution.
suzuki toshiya 313d4f4c 2009-07-13T00:01:57 Add a script to check the undefined and unused trace macros.
Werner Lemberg a2ef3769 2009-07-09T18:59:25 Merge branch 'master' of wl@git.sv.gnu.org:/srv/git/freetype/freetype2
suzuki toshiya da594627 2009-07-09T17:21:32 smooth: Check glyph size by width/height, instead of pitch/height.
Werner Lemberg 0d02317f 2009-07-09T09:21:46 [ftraster] Make it compile again with -D_STANDALONE_. * src/raster/ftraster.c [_STANDALONE_]: Define FT_CONFIG_STANDARD_LIBRARY_H. Include `string.h'. Don't include `rastpic.h'. Define FT_DEFINE_RASTER_FUNCS.
suzuki toshiya 4c531460 2009-07-08T14:26:51 Prevent the overflows by a glyph with too many points or contours.
Bram Tassyns 3d3ba056 2009-07-05T14:54:59 Improve compatibility to Acroread. This fixes Savannah bug #26944. * src/cff/cffload.c (cff_charset_compute_cids): For multiple GID to single CID mappings, make the lowest value win.
suzuki toshiya ad289d13 2009-06-29T03:09:17 ftpatent: Fix a bug by wrong usage of service->table_info().
Werner Lemberg 24370d67 2009-06-28T02:11:51 Uff, another thinko.
Werner Lemberg e7389a44 2009-06-28T01:25:55 [psaux, cff] Protect against nested `seac' calls. * include/freetype/internal/psaux.h (T1_Decoder), src/cff/cffgload.h (CFF_Decoder): Add `seac' boolean variable. * src/cff/cffgload.c (cff_operator_seac, cff_decoder_parse_charstrings), src/psaux/t1decode.c (t1operator_seac, t1_decoder_parse_charstrings): Use it.
Werner Lemberg 6bb34880 2009-06-28T00:43:37 Thinko. * src/psaux/t1decode.c (t1operator_seac) [FT_CONFIG_OPTION_INCREMENTAL]: Test for existence of incremental interface.
Werner Lemberg 610cddca 2009-06-26T07:39:08 [truetype] Remove TT_SubGlyphRec. * src/truetype/ttobjs.h (TT_SubGlyphRec): Removed, unused.
Werner Lemberg 858abbed 2009-06-26T06:15:41 For warning messages, replace FT_ERROR with FT_TRACE0. FT_ERROR is now used only if a function produces a non-zero `error' value. Formatting, improving and harmonizing debug strings.
Werner Lemberg e15d9c52 2009-06-25T21:31:53 Formatting etc.
Werner Lemberg 777d6d59 2009-06-25T16:46:39 Provide version information better. * src/base/ftinit.c (FT_Init_FreeType): Don't set version here but... * src/base/ftobjs.c (FT_New_Library): Here.
Werner Lemberg 1e8bf583 2009-06-23T15:48:52 Thinko.
Werner Lemberg 11cb8c36 2009-06-22T16:56:47 Use 16.16 format while parsing Type 1 charstrings. This fixes Savannah bug #26867. Previously, only integers have been used which can lead to serious rounding errors. However, fractional values are only used internally; after the charstrings (of either Type 1 or 2) have been processed, the resulting coordinates get rounded to integers currently -- before applying scaling. This should be fixed; at the same time a new load flag should be introduced, to be used in combination with FT_LOAD_NO_SCALE, which indicates that font units are returned in 16.16 format. Similarly, the incremental interface should be extended to allow fractional values for metrics. * include/freetype/internal/psaux.h (T1_BuilderRec): Remove `shift' field. * include/freetype/internal/pshints.h (T1_Hints_SetStemFunc, T1_Hints_SetStem3Func): Use FT_Fixed for coordinates. * src/psaux/psobjs.c: Include FT_INTERNAL_CALC_H. (t1_build_add_point): Always convert fixed to integer. * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Use 16.16 format everywhere (except for large integers followed by a `div'). [CAN_HANDLE_NON_INTEGRAL_T1_OPERANDS]: Remove #ifdef and activate code uncoditionally. Add support for random numbers and update remaining code accordingly; this should work now. (t1_operator_seac): Updated. * src/psaux/pshrec.c: Include FT_INTERNAL_CALC_H. (ps_hints_t1stem3, t1_hints_stem): Updated. * src/cid/cidgload.c: Include FT_INTERNAL_CALC_H. (cid_load_glyph) [FT_CONFIG_OPTION_INCREMENTAL], (cid_face_compute_max_advance, cid_slot_load_glyph): Updated. * src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String) [FT_CONFIG_OPTION_INCREMENTAL], (T1_Get_Advances, T1_Load_Glyph): Updated. * src/type1/t1load.c: Include FT_INTERNAL_CALC_H. * src/type1/t1objs.c (T1_Face_Init): Updated.
Werner Lemberg df9cd975 2009-06-21T23:25:36 src/pshinter/pshrec.c: Use PSH_Err_Ok.
Werner Lemberg f79df78a 2009-06-21T20:17:01 Code beautification. * src/type1/t1load.c (FT_INT_TO_FIXED): Removed. Replace everywhere with INT_TO_FIXED. (FT_FIXED_TO_INT): Move to ... * include/freetype/internal/ftcalc.h (FIXED_TO_INT): Here. Update all users.
Werner Lemberg 96d38983 2009-06-21T12:43:27 Remove useless code.
Werner Lemberg 1f540eff 2009-06-20T13:24:08 Remove unused variables. * include/freetype/internal/psaux.h (T1_BuilderRec), src/cff/cffgload.h (CFF_Builder): Remove `last'. Update all users.
Werner Lemberg 41821f8a 2009-06-20T09:31:19 [psaux] Check large integers while parsing charstrings. * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Large integers must be followed by a `div' operator.
Werner Lemberg 541ab5ad 2009-06-20T07:31:44 [cff] Revert last change. * src/cff/cffgload.c (cff_decoder_parse_charstrings): Do it. Next time, don't confuse Type 2 charstring opcodes with TOP DICT values...
Werner Lemberg b34c9b49 2009-06-20T06:32:23 aflatin.c: Fix compiler warning.
Werner Lemberg f1631f2d 2009-06-19T23:50:37 [cff] Fix handling of reserved byte 0xFF. * src/cff/cffgload.c (cff_decoder_parse_charstrings): Abort if byte 0xFF is encountered.
Werner Lemberg 86fa2ebc 2009-06-19T14:56:26 Improve debug messages for Type1 charstrings. * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Emit newlines after instructions. Prettify output.
Werner Lemberg d1862d22 2009-06-19T09:09:34 More ftgray fixes for FT_STATIC_RASTER. Problems reported by suyu@cooee.cn. * src/smooth/ftgrays.c (gray_move_to, gray_raster_render): Use RAS_VAR.
Werner Lemberg 82622131 2009-06-18T15:48:21 Whitespace & documentation improvements.
Werner Lemberg 72271140 2009-06-18T15:42:52 Fix B/W rasterization of subglyphs with different drop-out modes. Normally, the SCANMODE instruction (if present) to set the drop-out mode in a TrueType font is located in the `prep' table only and thus valid for all glyphs. However, there are fonts like `pala.ttf' which additionally contain this instruction in the hinting code of some glyphs (but not all). As a result it can happen that a composite glyph needs multiple drop-out modes for its subglyphs since the rendering state gets reset for each subglyph. FreeType collects the hinted outlines from all subglyphs, then it sends the data to the rasterizer. It also sends the drop-out mode -- after hinting has been applied -- and here is the error: It sends the drop-out mode of the last subglyph only; drop-out modes of all other subglyphs are lost. This patch fixes the problem; it adds a second, alternative mechanism to pass the drop-out mode: For each contour, the rasterizer now checks the first `tags' array element. If bit 2 is set, bits 5-7 contain the contour's drop-out mode, overriding the global drop-out mode. * include/freetype/ftimage.h (FT_CURVE_TAG_HAS_SCANMODE): New macro. * src/truetype/ttgload.c (TT_Hint_Glyph): Store drop-out mode in `tags[0]'. * src/raster/ftraster.c (Flow_Up, Overshoot_Top, Overshoot_Bottom): Use bits 3-5 instead of 0-2. (New_Profile): Set the drop-out mode in the profile's `flags' field. (Decompose_Curve): Check `tags[0]' and set `dropOutControl' if necessary. (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Horizontal_Gray_Sweep_Drop, Draw_Sweep): Use the profile's drop-out mode.
Werner Lemberg 780d7e05 2009-06-17T06:45:20 Minor simplification.
Werner Lemberg 38e40767 2009-06-16T22:41:46 Typo.
Werner Lemberg 42206ad8 2009-06-16T15:14:21 Improve scan conversion rules 4 and 6. Two new constraints are introduced to better identify a `stub' -- a concept which is only vaguely described in the OpenType specification. The old code was too rigorous and suppressed more pixel than it should. . The intersection of the two profiles with the scanline is less than a half pixel. Code related to this was already present in the sources but has been commented out. . The endpoint of the original contour forming a profile has a distance (`overshoot') less than half a pixel to the scanline. Note that the two additional conditions fix almost all differences to the Windows rasterizer, but some problematic cases remain. * src/raster/ftraster.c (Overshoot_Top, Overshoot_Bottom): New macros for the `flags' field in the `TProfile' structure. (IS_BOTTOM_OVERSHOOT, IS_TOP_OVERSHOOT): New macros. (New_Profile, End_Profile): Pass overshoot flag as an argument and set it accordingly. Update callers. (Vertical_Sweep_Drop, Horizontal_Sweep_Drop): Implement the two new constraints.
Werner Lemberg 0409ef32 2009-06-11T17:32:31 Increase precision for B/W rasterizer. * src/raster/ftraster.c (Set_High_Precision): Add two more bits to the precision. This corrects rendering of some small glyphs, for example, glyph `xi' in verdana.ttf at 13 ppem. Testing with ftbench on my GNU/Linux box I don't see a performance degradation.
Michael Zucchi f33b237c 2009-06-08T17:12:40 Handle FT_STROKER_LINECAP_BUTT. This fixes Savannah bug #26757. * src/base/ftstroke.c (ft_stroker_cap): Implement it.
Werner Lemberg c6788a38 2009-06-07T13:09:21 Fix some potential out-of-memory crashes. * src/base/ftobjs.c (ft_glyphslot_done): Check `slot->internal'. * src/base/ftstream.c (FT_Stream_ReleaseFrame): Check `stream'. * src/truetype/ttinterp.c (TT_New_Context): Avoid double-free of `exec' in case of failure.
Werner Lemberg 2f2b780e 2009-06-07T08:29:30 Simplify math. Suggested by Alexei Podtelezhnikov <apodtele@gmail.com>. * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Horizontal_Gray_Sweep_Drop): Do it.
Werner Lemberg 90c699af 2009-06-05T10:37:15 Preparation for fixing scan conversion rules 4 and 6. * src/raster/ftraster.c (TFlow): Replace enumeration with... (Flow_Up): This macro. (TProfile): Replace `flow' member with `flags' bit field. Update all affected code.
Werner Lemberg cbdba615 2009-06-03T08:53:47 Typo, formatting.
James Cloos 15e8e237 2009-05-29T12:59:42 Enable autohinting for glyphs rotated by multiples of 90°. * src/base/ftobjs.c (FT_Load_Glyph): Alter check for permitted matrices to allow rotations by multiples of 90°, not only unrotated, possibly slanted matrices.
Werner Lemberg b4df8751 2009-05-28T07:07:48 Remove compiler warning. Reported by Krzysztof Kowalczyk <kkowalczyk@gmail.com>. * src/autofit/aflatin2.c (af_latin2_hint_edges): Move declaration of `n_edges' into `#if' block.
Werner Lemberg c32019b6 2009-05-28T06:56:26 Make compilation work with FT_CONFIG_OPTION_USE_ZLIB not defined. Reported by Krzysztof Kowalczyk <kkowalczyk@gmail.com>. * src/pcf/pcfdrivr.c (PCF_Face_Init) [!FT_CONFIG_OPTION_USE_ZLIB]: Make it work. Simplify #ifdef logic.
Werner Lemberg 19fbc576 2009-05-22T09:20:25 Improve b/w rasterizer. Problem reported by Krzysztof Kotlenga <pocek@users.sf.net>. * src/raster/raster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Horizontal_Gray_Sweep_Drop): For smart drop-out mode, if intersections are equally distant relative to next pixel center, select the left pixel, not the right one.
Werner Lemberg b72af52b 2009-05-19T07:33:15 Fix Savannah bug #26600. * src/type42/t42parse.c (t42_load_keyword): Handle T1_FIELD_LOCATION_FONT_EXTRA.
Ralph Giles 04a7858c 2009-04-30T20:32:31 Make `seac' operator work correctly with incremental interface. SEAC (Single Encoding Accented Characters) are composed of (basically) two indices specifying two other glyphs, and a movement to position the accent properly with respect to the main glyph. To make it work with the incremental interface we now demand that the caller handles the encoding by itself.
Werner Lemberg 8b84c9d1 2009-04-27T19:40:35 autohinter: Don't change digit widths if all widths are the same. This fixes FreeDesktop bug #21197. * src/autofit/afglobal.c (AF_DIGIT): New macro. (af_face_globals_compute_script_coverage): Mark ASCII digits in `glyph_scripts' array. (af_face_globals_get_metrics): Updated. (af_face_globals_is_digit): New function. * src/autofit/afglobal.h: Updated. (AF_ScriptMetricsRec): Add `digits_have_same_width' flag. * src/autofit/aflatin.c: Include FT_ADVANCES_H. (af_latin_metrics_check_digits): New function. (af_latin_metrics_init): Use it. * src/autofit/aflatin.h: Updated. * src/autofit/afcjk.c (af_cjk_metrics_init): Updated. * src/autofit/aflatin2.c: Similar changes as with aflatin.c. * src/autofit/afloader.c (af_loader_load_g): Test digit width. * docs/CHANGES: Document it.
Werner Lemberg b5a46059 2009-04-26T16:32:10 Make ftgrays compile with _STANDALONE_ and FT_STATIC_RASTER again. Problems reported by suyu@cooee.cn. * src/smooth/ftgrays.c (FT_DEFINE_OUTLINE_FUNCS, FT_DEFINE_RASTER_FUNCS) [_STANDALONE_]: Define. [!_STANDALONE_]: Include ftspic.h only here. (ras): Define/declare after definition of `TWorker'. Use `RAS_VAR_' where necessary.
Oran Agra 1dcd0f23 2009-04-05T18:25:14 Add #error to modules and files that do not support PIC yet. When FT_CONFIG_OPTION_PIC is defined the following files will create #error: * src/bdf/bdfdrivr.h * src/cache/ftcmanag.c * src/cid/cidriver.h * src/gxvalid/gxvmod.h * src/gzip/ftgzip.c * src/lzw/ftlzw.c * src/otvalid/otvmod.h * src/pcf/pcfdrivr.h * src/pfr/pfrdrivr.h * src/psaux/psauxmod.h * src/type1/t1driver.h * src/type42/t42drivr.h * src/winfonts/winfnt.h
Oran Agra 59b4af8d 2009-04-05T18:23:38 Position Independent Code (PIC) support in autofit module. * include/freetype/internal/autohint.h add macros to init instances of FT_AutoHinter_ServiceRec. * src/autofit/afmodule.h declare autofit_module_class using macros from ftmodapi.h, when FT_CONFIG_OPTION_PIC is defined create and destroy functions will be declared. * src/autofit/afmodule.c when FT_CONFIG_OPTION_PIC is defined af_autofitter_service and autofit_module_class structs will have functions to init or create and destroy them instead of being allocated in the global scope. And macros will be used from afpic.h in order to access them. * src/autofit/aftypes.h add macros to init and declare instances of AF_ScriptClassRec. * src/autofit/afcjk.h declare af_cjk_script_class using macros from aftypes.h, when FT_CONFIG_OPTION_PIC is defined init function will be declared. * src/autofit/afcjk.c when FT_CONFIG_OPTION_PIC is defined af_cjk_script_class struct will have function to init it instead of being allocated in the global scope. * src/autofit/afdummy.h declare af_dummy_script_class using macros from aftypes.h, when FT_CONFIG_OPTION_PIC is defined init function will be declared. * src/autofit/afdummy.c when FT_CONFIG_OPTION_PIC is defined af_dummy_script_class struct will have function to init it instead of being allocated in the global scope. * src/autofit/afindic.h declare af_indic_script_class using macros from aftypes.h, when FT_CONFIG_OPTION_PIC is defined init function will be declared. * src/autofit/afindic.c when FT_CONFIG_OPTION_PIC is defined af_indic_script_class struct will have function to init it instead of being allocated in the global scope. * src/autofit/aflatin.h declare af_latin_script_class using macros from aftypes.h, when FT_CONFIG_OPTION_PIC is defined init function will be declared. * src/autofit/aflatin.c when FT_CONFIG_OPTION_PIC is defined af_latin_script_class struct will have function to init it instead of being allocated in the global scope. Change af_latin_blue_chars to be PIC-compatible by being a two dimentional array rather than array of pointers. * src/autofit/aflatin2.h declare af_latin2_script_class using macros from aftypes.h, when FT_CONFIG_OPTION_PIC is defined init function will be declared. * src/autofit/aflatin2.c when FT_CONFIG_OPTION_PIC is defined af_latin2_script_class struct will have function to init it instead of being allocated in the global scope. Change af_latin2_blue_chars to be PIC-compatible by being a two dimentional array rather than array of pointers. * src/autofit/afglobal.c when FT_CONFIG_OPTION_PIC is defined af_script_classes array initialization was moved to afpic.c and is later refered using macros defeined in afpic.h. New Files: * src/autofit/afpic.h declare struct to hold PIC globals for autofit module and macros to access them. * src/autofit/afpic.c implement functions to allocate, destroy and initialize PIC globals for autofit module. * src/autofit/autofit.c add new file to build: afpic.c. * src/autofit/jamfile add new files to FT2_MULTI build: afpic.c.
Oran Agra 4e711be9 2009-04-05T18:20:16 Position Independent Code (PIC) support in pshinter module. * include/freetype/internal/pshints.h add macros to init instances of PSHinter_Interface. * src/pshinter/pshmod.h declare pshinter_module_class using macros from ftmodapi.h, when FT_CONFIG_OPTION_PIC is defined create and destroy functions will be declared. * src/pshinter/pshmod.c when FT_CONFIG_OPTION_PIC is defined pshinter_interface and pshinter_module_class structs will have functions to init or create and destroy them instead of being allocated in the global scope. And macros will be used from pshpic.h in order to access them. New Files: * src/pshinter/pshpic.h declare struct to hold PIC globals for pshinter module and macros to access them. * src/pshinter/pshpic.c implement functions to allocate, destroy and initialize PIC globals for pshinter module. * src/pshinter/pshinter.c add new file to build: pshpic.c. * src/pshinter/jamfile add new files to FT2_MULTI build: pshpic.c.
Oran Agra 24b110c6 2009-04-05T18:18:03 Position Independent Code (PIC) support in psnames module. * include/freetype/internal/services/svpscmap.h add macros to init instances of FT_Service_PsCMapsRec. * src/psnames/psmodule.h declare psnames_module_class using macros from ftmodapi.h, when FT_CONFIG_OPTION_PIC is defined create and destroy functions will be declared. * src/psnames/psmodule.c when FT_CONFIG_OPTION_PIC is defined pscmaps_interface and pscmaps_services structs and psnames_module_class array will have functions to init or create and destroy them instead of being allocated in the global scope. And macros will be used from pspic.h in order to access them. New Files: * src/psnames/pspic.h declare struct to hold PIC globals for psnames module and macros to access them. * src/psnames/pspic.c implement functions to allocate, destroy and initialize PIC globals for psnames module. * src/psnames/psnames.c add new file to build: pspic.c. * src/psnames/jamfile add new files to FT2_MULTI build: pspic.c.
Oran Agra 05609509 2009-04-05T18:16:13 Position Independent Code (PIC) support in raster renderer. * src/raster/ftrend1.h declare ft_raster1_renderer_class and ft_raster5_renderer_class using macros from ftrender.h, when FT_CONFIG_OPTION_PIC is defined create and destroy functions will be declared. * src/smooth/ftrend1.c when FT_CONFIG_OPTION_PIC is defined ft_raster1_renderer_class and ft_raster5_renderer_class structs will have functions to init or create and destroy them instead of being allocated in the global scope. Macros will be used from rastpic.h in order to access ft_standard_raster from the pic_container (allocated in ftraster.c). In ft_raster1_render when PIC is enabled, the last letter of module_name is used to verfy the renderer class rather than the class pointer. * src/raster/ftraster.c when FT_CONFIG_OPTION_PIC is defined ft_standard_raster struct will have function to init it instead of being allocated in the global scope. New Files: * src/raster/rastpic.h declare struct to hold PIC globals for raster renderer and macros to access them. * src/raster/rastpic.c implement functions to allocate, destroy and initialize PIC globals for raster renderer. * src/raster/raster.c add new file to build: rastpic.c. * src/raster/jamfile add new files to FT2_MULTI build: rastpic.c.
Oran Agra c1e22f39 2009-04-05T18:14:04 Position Independent Code (PIC) support in smooth renderer. * src/smooth/ftsmooth.h declare ft_smooth_renderer_class, ft_smooth_lcd_renderer_class and ft_smooth_lcd_v_renderer_class using macros from ftrender.h, when FT_CONFIG_OPTION_PIC is defined create and destroy functions will be declared. * src/smooth/ftsmooth.c when FT_CONFIG_OPTION_PIC is defined the following structs: ft_smooth_renderer_class, ft_smooth_lcd_renderer_class and ft_smooth_lcd_v_renderer_class will have functions to init or create and destroy them instead of being allocated in the global scope. And macros will be used from ftspic.h in order to access ft_grays_raster from the pic_container (allocated in ftgrays.c). * src/smooth/ftgrays.h include FT_CONFIG_CONFIG_H * src/smooth/ftgrays.c when FT_CONFIG_OPTION_PIC is NOT defined func_interface was moved from gray_convert_glyph_inner function to the global scope. When FT_CONFIG_OPTION_PIC is defined func_interface and ft_grays_raster structs will have functions to init them instead of being allocated in the global scope. And func_interface will be allocated on the stack of gray_convert_glyph_inner. New Files: * src/smooth/ftspic.h declare struct to hold PIC globals for smooth renderer and macros to access them. * src/smooth/ftspic.c implement functions to allocate, destroy and initialize PIC globals for smooth renderer. * src/smooth/smooth.c add new file to build: ftspic.c. * src/smooth/jamfile add new files to FT2_MULTI build: ftspic.c.
Oran Agra cb3b6141 2009-04-05T18:12:03 Position Independent Code (PIC) support in cff driver. * include/freetype/internal/services/svcid.h add macros to init instances of FT_Service_CIDRec. * include/freetype/internal/services/svpsinfo.h add macros to init instances of FT_Service_PsInfoRec. * src/cff/cffcmap.h declare cff_cmap_encoding_class_rec and cff_cmap_unicode_class_rec using macros from ftobjs.h, when FT_CONFIG_OPTION_PIC is defined create and destroy functions will be declared. * src/cff/cffcmap.c when FT_CONFIG_OPTION_PIC is defined the following structs: cff_cmap_encoding_class_rec and cff_cmap_unicode_class_rec will have functions to init or create and destroy them instead of being allocated in the global scope. * src/cff/cffdrivr.h declare cff_driver_class using macros from ftdriver.h, when FT_CONFIG_OPTION_PIC is defined create and destroy functions will be declared. * src/cff/cffdrivr.c when FT_CONFIG_OPTION_PIC is defined the following structs: cff_service_glyph_dict, cff_service_ps_info, cff_service_ps_name cff_service_get_cmap_info, cff_service_cid_info, cff_driver_class, and cff_services array will have functions to init or create and destroy them instead of being allocated in the global scope. And macros will be used from cffpic.h in order to access them from the pic_container. Use macros from cffpic.h in order to access the structs allocated in cffcmap.c * src/cff/cffobjs.c Use macros from cffpic.h in order to access the structs allocated in cffcmap.c * src/cff/parser.c when FT_CONFIG_OPTION_PIC is defined implement functions to create and destroy cff_field_handlers array instead of being allocated in the global scope. And macros will be used from cffpic.h in order to access it from the pic_container. New Files: * src/cff/cffpic.h declare struct to hold PIC globals for cff driver and macros to access them. * src/cff/cffpic.c implement functions to allocate, destroy and initialize PIC globals for cff driver. * src/cff/cff.c add new file to build: cffpic.c. * src/cff/jamfile add new files to FT2_MULTI build: cffpic.c.