Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| f1a981b5 | 2011-01-31 22:26:53 | [truetype] Protect jump instructions against endless loops. * src/truetype/interp.c (DO_JROT, DO_JMPR, DO_JROF): Exit with error if offset is zero. | ||
| d6a213f8 | 2011-01-31 18:51:07 | [truetype] Improve handling of invalid references. * src/truetype/interp.c: Set even more TT_Err_Invalid_Reference error codes only if pedantic hinting is active. At the same time, try to provide sane values which hopefully allow useful continuation. Exception to this is CALL and LOOPCALL – due to possible stack corruption it is necessary to bail out. | ||
| 96f04564 | 2011-01-31 10:24:32 | [truetype] Improve handling of stack underflow. * src/truetype/ttinterp.c (TT_RunIns, Ins_FLIPPT, Ins_DELTAP, Ins_DELTAC): Exit with error only if `pedantic_hinting' is set. Otherwise, try to do something sane. | ||
| 0682251e | 2011-01-30 16:38:09 | * src/sfnt/ttmtx.c (tt_face_load_hmtx): Fix tracing message. | ||
| c61b3596 | 2011-01-30 16:29:45 | [truetype]: Fix behaviour of MIAP for invalid arguments. * src/truetype/ttinterp.c (Ins_MIAP): Set reference points even in case of error. | ||
| dcdb3167 | 2011-01-18 07:35:26 | [truetype] Fix handling of MIRP instruction. Thanks to Greg Hitchcock who explained the issue. * src/truetype/ttinterp.c (Ins_MIRP): Replace a `>=' operator with `>' since the description in the specification is incorrect. This fixes, for example, glyph `two' in font `Helvetica Neue LT Com 65 medium' at 15ppem. | ||
| 9073e7ce | 2010-11-26 11:58:08 | [truetype] Better multi-threading support. * src/truetype/ttinterp.c (TT_Load_Context): Reset glyph zone references. | ||
| 46c371c2 | 2010-10-25 00:14:13 | Replace "%lx" for memory address by "%p", LLP64 platforms. On LLP64 platforms (e.g. Win64), long (32-bit) cannot cover the memory address (64-bit). Also the casts from the pointer type to long int should be removed to preserve the address correctly. * src/raster/ftraster.c (New_Profile): Replace "%lx" by "%p". (End_Profile) Ditto. * src/truetype/ttinterp.c (Init_Context): Ditto. | ||
| 0edf0986 | 2010-10-06 11:52:27 | [truetype] Improve error handling of `SHZ' bytecode instruction. Problem reported by Chris Evans <scarybeasts@gmail.com>. * src/truetype/ttinterp.c (Ins_SHZ): Check `last_point'. | ||
| 5edc2f33 | 2010-10-01 08:15:55 | Fix Savannah bug #31040. * src/truetype/ttinterp.c (free_buffer_in_size): Remove. (TT_RunIns): Updated. | ||
| db053ec9 | 2010-09-17 23:20:00 | [truetype] Don't duplicate size->twilight structure to be freed. * src/truetype/ttinterp.c (free_buffer_in_size): Don't duplicate FT_GlyphZoneRec size->twilight to be freed. If duplicated, FT_FREE() erases the duplicated pointers only and leave original pointers. They can cause the double-free crash when the burst errors occur in TrueType interpreter and free_buffer_in_size() is invoked repeatedly. See Savannah bug #31040 for detail. | ||
| afd89d30 | 2010-09-15 13:02:35 | Make bytecode debugging with FontForge work again. * src/truetype/ttinterp.c (TT_RunIns): Don't call `free_buffer_in_size' in case of error if a debugger is active. | ||
| 6abb9232 | 2010-09-14 09:02:10 | Improve tracing messages. * src/truetype/ttinterp.c (TT_RunIns): Improve wording of tracing message. * src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): Add tracing message. * src/truetype/ttgload.c (tt_loader_init): Add tracing message. * src/cache/ftcsbits.c (ftc_snode_load): Emit tracing message if glyph doesn't fit into a small bitmap container. | ||
| 5220ef58 | 2010-09-13 07:32:22 | Fix minor issues reported by <muktha.narayan@wipro.com>. * src/autofit/aflatin.c (af_latin_compute_stem_width): Remove redundant conditional check. * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Ditto. * src/cff/cffload.c (cff_encoding_load): Remove conditional check which always evaluates to `true'. * src/pshinter/pshalgo.c (ps_glyph_interpolate_strong_points): Ditto. * src/truetype/ttinterp.c (Ins_IUP): Ditto. * src/cid/cidgload.c (cid_slot_load_glyph): Don't check for NULL if value is already dereferenced. * src/winfonts/winfnt.c (FNT_Load_Glyph): Fix check of `face'. | ||
| 0eb657b0 | 2010-08-31 13:29:05 | [truetype] Decrease the trace level catching the interpreter error. * src/truetype/ttinterp.c (TT_RunIns): Decrease the trace level showing the error when the interpreter returns with an error, from FT_TRACE7() to FT_TRACE1(). | ||
| 29e044a4 | 2010-08-31 01:23:30 | [truetype] Prevent bytecode reuse after the interpretation error. * src/truetype/ttinterp.c (free_buffer_in_size): New function to free the buffer allocated during the interpretation of this glyph. (TT_RunIns): Unset FT_Face->size->{cvt_ready,bytecode_ready} if an error occurs in the bytecode interpretation. The interpretation of invalid bytecode may break the function definitions and referring them in later interpretation is danger. By unsetting these flags, `fpgm' and `prep' tables are executed again in next interpretation. Fix Savannah bug #30798, reported by Robert Swiecki. | ||
| 346f1867 | 2010-08-06 00:47:57 | Fix Savannah bug #30657. * src/truetype/ttinterp.c (BOUNDSL): New macro. Change `BOUNDS' to `BOUNDSL' where appropriate. * src/truetype/ttinterp.h (TT_ExecContextRec): Fix type of `cvtSize'. | ||
| 888cd184 | 2010-07-08 07:29:42 | Fix Savannah bug #30361. * src/truetype/ttinterp.c (Ins_IUP): Fix bounds check. | ||
| a2d225e3 | 2010-07-01 11:37:09 | [truetype] Protect against code range underflow. * src/truetype/ttinterp.c (DO_JROT, DO_JMPR, DO_JROF): Don't allow negative IP values. | ||
| 462ddb40 | 2010-07-01 11:28:43 | [truetype] Add rudimentary tracing for bytecode instructions. * src/truetype/ttinterp.c (opcode_name) [FT_DEBUG_LEVEL_TRACE]: New array. (TT_RunIns): Trace opcodes. | ||
| 370aea80 | 2010-06-08 08:37:11 | Formatting. | ||
| 6da023d1 | 2010-05-20 15:38:00 | TrueType: Make FreeType ignore maxSizeOfInstructions in `maxp'. Acroread does the same. * src/truetype/ttgload.c (TT_Process_Composite_Glyph): Call `Update_Max' to adjust size of instructions array if necessary and add a rough safety check. (load_truetype_glyph): Save `loader->byte_len' before recursive call. * src/truetype/ttinterp.h, src/truetype/ttinterp.c (Update_Max): Declare it as FT_LOCAL. | ||
| a1151420 | 2009-08-01 00:32:18 | truetype: Check invalid function number in IDEF instruction. | ||
| d1c23082 | 2009-08-01 00:32:17 | truetype: Check invalid function number in FDEF instruction. | ||
| 6dc27526 | 2009-08-01 00:32:15 | truetype: Cast the numerical operands to 32-bit for LP64 systems. | ||
| 3b56c4d3 | 2009-08-01 00:32:15 | truetype: Cast the project vector to 32-bit for LP64 system. | ||
| c6788a38 | 2009-06-07 13: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. | ||
| 1e5e7aa0 | 2009-01-25 16:27:04 | Fix SCANCTRL handling in TTFs. Problem reported by Alexey Kryukov <anagnost@yandex.ru>. * src/truetype/ttinterp.c (Ins_SCANCTRL): Fix threshold handling. | ||
| 1a5d561d | 2008-11-29 22:50:24 | * src/autofit/afcjk.c, src/base/ftoutln.c, src/base/ftrfork.c, src/bdf/bdfdrivr.c, src/gxvalid/gxvmorx.c, src/otvalid/otvmath.c, src/pcf/pcfdrivr.c, src/psnames/pstables.h, src/smooth/ftgrays.c, src/tools/glnames.py, src/truetype/ttinterp.c, src/type1/t1load.c, src/type42/t42objs.c, src/winfonts/winfnt.c: Fix compiler warnings (Atari PureC). | ||
| 105721a5 | 2008-11-15 10:35:51 | * src/truetype/ttinterp.c (tt_default_graphics_state): The default value for `scan_type' is zero, as confirmed by Greg Hitchcock from Microsoft. Problem reported by Michal Nowakowski <miszka@limes.com.pl>. | ||
| ce8853af | 2008-06-24 11:19:03 | * src/truetype/ttinterp. (Ins_SCANTYPE): Don't check rendering mode. * src/raster/ftraster.c (Render_Glyph, Render_Gray_Glyph, Draw_Sweep): No-dropout mode is value 2, not value 0. (Draw_Sweep): Really skip dropout handling for no-dropout mode. | ||
| 5df5dbb7 | 2008-06-22 13:40:08 | Enable access to the various dropout rules of the B&W rasterizer. Pass dropout rules from the TT bytecode interpreter to the rasterizer; temporarily this is enabled only if `USE_SCAN_CONVERSION_RULES' is defined. * include/freetype/ftimage.h (FT_OUTLINE_SMART_DROPOUTS, FT_OUTLINE_EXCLUDE_STUBS): New flags for for FT_Outline. * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Horizontal_Gray_Sweep_Drop): Use same mode numbers as given in the OpenType specification. Fix mode 4 computation. (Render_Glyph, Render_Gray_Glyph): Handle new outline flags. * src/truetype/ttgload.c (TT_Load_Glyph) [USE_SCAN_CONVERSION_RULES]: Convert scan conversion mode to FT_OUTLINE_XXX flags. * src/truetype/ttinterp.c (Ins_SCANCTRL): Enable ppem check. | ||
| 7cb9ec0f | 2008-06-09 20:49:29 | * src/type1/t1parse.h (T1_ParserRec): Make `base_len' and `private_len' unsigned. * src/type1/t1parse.c (read_pfb_tag): Make `asize' unsigned and read it as such. (T1_New_Parser, T1_Get_Private_Dict): Make `size' unsigned. * src/base/ftstream.c (FT_Stream_Skip): Reject negative values. * src/type1/t1load.c (parse_blend_design_positions): Check `n_axis' for sane value. Fix typo. * src/psaux/psobjs.c (ps_table_add): Check `idx' correctly. * src/truetype/ttinterp (Ins_SHC): Use BOUNDS() to check `last_point'. * src/sfnt/ttload.c (tt_face_load_max_profile): Limit `maxTwilightPoints'. | ||
| d77e7229 | 2008-06-05 22:07:19 | * src/truetype/ttinterp.c (Ins_IP): Handle case `org_dist == 0' correctly. This fixes glyphs `t' and `h' of Arial Narrow at 12ppem. | ||
| 2b0b4221 | 2008-05-28 22:17:28 | Cosmetic code changes. | ||
| c94fa669 | 2008-05-27 23:24:07 | * src/truetype/ttinterp.c (Ins_MD): The MD instruction also uses original, unscaled input values. Confirmed by Greg Hitchcock from Microsoft. | ||
| 28464c48 | 2008-02-18 20:34:42 | * src/truetype/ttinterp.c (Ins_IUP): Check number of points. Fix from Savannah bug #22356. | ||
| 74cc0e9e | 2007-06-30 22:54:12 | * src/truetype/ttinterp.c: add missing variable initialization, gets rid of Valgrind fixes. * src/autofit/aflatin.c: get rid of an infinite loop in the case of degenerate fonts. | ||
| e12ed563 | 2007-06-17 05:31:23 | * src/tools/ftrandom.c (font_size): New global variable. (TestFace): Use it. (main): Handle new option `--size' to set `font_size'. (Usage): Updated. Formatting. | ||
| 815911ae | 2007-06-16 17:07:20 | * src/truetype/ttgload.c (TT_Load_Simple_Glyph): check the well-formedness of the contours array when loading a glyph * src/truetype/ttinterp.c (Ins_IP): check argument ranges to reject bogus operations properly | ||
| c793d90f | 2007-06-01 20:51:11 | * src/truetype/ttinterp.c (Null_Vector, NULL_Vector): Removed, unused. | ||
| 94be20ea | 2007-05-09 20:02:55 | * src/truetype/ttinterp.c (Ins_IP), src/autofit/aflatin.c (af_latin_metrics_scale_dim): Fix compiler warnings. | ||
| 3b242d36 | 2007-03-26 12:03:04 | last (tiny) fix to the bytecode interpreter and code cleanup | ||
| c9f6c66f | 2007-03-21 13:30:14 | formatting | ||
| 64a9ef20 | 2007-03-18 07:35:08 | another bytecode regression fix. Hopefully, this should be the latest | ||
| 74c34eba | 2007-03-18 07:19:31 | another bytecode interpreter regression fix | ||
| 89020d97 | 2007-03-17 17:48:57 | fixing TrueType bytecode interpreter regression for HLB_____.TTF, needs more testing with other fonts | ||
| a091517a | 2007-02-16 08:12:50 | * src/truetype/ttinterp.c (Ins_MD): Remove unused variable. * src/autofit/aflatin.c (af_latin_hints_link_segments): Ditto. | ||
| 3cd6cc24 | 2007-02-16 08:10:17 | formatting | ||
| 2c4500e9 | 2007-02-14 15:08:47 | improving TrueType bytecode interpreter to better match Windows behaviour on tricky cases... FIX_BYTECODE is now the default to allow large testing | ||
| c6a14086 | 2007-02-12 22:08:15 | * src/truetype/ttinterp.c (Project_x, Project_y): Remove compiler warnings. * src/pcf/pcfread.c (pcf_interpret_style), src/bdf/bdfdrivr.c (bdf_interpret_style): Ditto. | ||
| 406d25f3 | 2007-02-12 22:01:18 | more formatting and copyright years | ||
| 72a0dd24 | 2007-02-12 15:24:51 | some simplifications of the TrueType interpreter projection code (preliminaries to various interpreter fixes) | ||
| 6e87ed9f | 2007-01-26 22:18:56 | Spelling fixes from Alexei. | ||
| 555258ff | 2007-01-21 09:46:37 | * docs/CHANGES: Document SHZ fix. * src/truetype/ttinterp.c (Ins_SHZ): SHZ doesn't move phantom points. | ||
| b4142d51 | 2007-01-17 12:45:26 | Whitespace and spelling fixes from Alexei. Formatting, copyright years. | ||
| 22122729 | 2007-01-16 20:06:44 | * src/autofit/aflatin.c, src/cff/cffdriver.c, src/truetype/ttobjs.c, src/truetype/ttinterp.c: fixing compiler warnings | ||
| 8c4120d0 | 2007-01-15 06:42:40 | Fix various compiler warnings. * src/truetype/ttdriver.c (tt_size_select), src/cff/cffobjs.h, src/cff/cffobjs.c (cff_size_request), src/type42/t42objs.h: s/index/strike_index/. * src/base/ftobjs.c (FT_Match_Size): s/index/size_index/. * src/gxvalid/gxvmorx5.c (gxv_morx_subtable_type5_InsertList_validate): s/index/table_index/. * src/truetype/ttinterp.c (Compute_Point_Displacement), src/pcf/pcfread.c (pcf_seek_to_table_type): Avoid possibly uninitialized variables. | ||
| 27cf9de1 | 2007-01-13 07:34:23 | formatting, copyright years | ||
| e3654532 | 2007-01-13 00:19:18 | * src/base/ftbitmap.c: fixing memory stomping bug in the bitmap embolderner when the pitch of the source bitmap is *much* larger than its width * src/truetype/ttinterp.c: fixing aliasing-related compilation warning | ||
| 2bad8ffb | 2006-11-22 09:37:03 | cosmetics | ||
| 82ee38e5 | 2006-11-20 09:19:26 | formatting | ||
| 7bab6ae3 | 2006-11-13 11:25:06 | * src/truetype/ttinterp.c: undefined the FIX_BYTECODE macro, since the interpreter "enhancements" are still too buggy for general use | ||
| 6aa260ce | 2006-08-25 22:45:13 | support for "automatic unpatented hinting" added we still need to determine the list of "trick" CJK fonts that are going to toggle the bytecode interpreter instead of the auto-hinter | ||
| 12342996 | 2006-08-19 11:18:09 | formatting | ||
| 33f5f249 | 2006-08-16 16:50:55 | * include/freetype/internal/ftgloadr.h, include/freetype/internal/tttypes.h, src/base/ftgloadr.c, src/base/ftobjs.c, src/truetype/ttgload.c, src/truetype/ttinterp.c, src/truetype/ttobjs.c: improvements to native TrueType hinting, this is a first try, controlled by the FIX_BYTECODE macro in src/truetype/ttinterp.c | ||
| a2da05c2 | 2006-06-25 06:27:27 | Fix two hinting bugs as reported in http://lists.nongnu.org/archive/html/freetype-devel/2006-06/msg00057.html. * include/freetype/internal/tttypes.h (TT_GlyphZoneRec): Add `first_point' member. * src/truetype/ttgload.c (tt_prepare_zone): Initialize `first_point'. (TT_Process_Composite_Glyph): Always untouch points. * src/truetype/ttinterp.c (Ins_SHC): Fix computation of `first_point' and `last_point' in case of composite glyphs. (Ins_IUP): Fix computation of `end_point'. | ||
| 8e6f8c4d | 2006-02-17 08:07:09 | Formatting, copyright years, documentation improvements. | ||
| 0d565fdc | 2006-02-15 07:44:31 | * include/freetype/internal/ftobjs.h (FT_Face_InternalRec): Remove unused `max_points' and `max_contours'. * src/cid/cidobjs.c (cid_face_init), src/type1/t1objs.c (T1_Face_Init), src/type42/t42objs.c (T42_Face_Init): Update. * include/freetype/internal/tttypes.h (TT_FaceRec): Remove unused `max_components'. * src/truetype/ttinterp.h (TT_ExecContextRec): Remove unused `loadSize' and `loadStack'. * src/truetype/ttinterp.c (TT_Done_Context, TT_Load_Context), src/sfnt/ttload.c (tt_face_load_maxp): Update. * src/cff/cffobjs.h (cff_size_select), src/sfnt/sfdriver.c (sfnt_interface), src/truetype/ttdriver.c (tt_size_request): Fix compiler errors/warnings when TT_CONFIG_OPTION_EMBEDDED_BITMAPS is not defined. * src/sfnt/ttmtx.c (tt_face_load_hmtx, tt_face_get_metrics): Fix possible segment faults for the non-FT_OPTIMIZE_MEMORY'ed versions. (finally!) For most OpenType tables, `tt_face_load_xxxx' simply loads the table and `face->root' is set later in `sfnt_load_face'. Here, we try to make this work for _all_ tables. * src/sfnt/ttsbit.c, src/sfnt/ttsbit0.c, src/sfnt/ttload.c, src/sfnt/ttmtx.c: all `tt_face_load_xxxx' should load the table and then exit. Error handling or setting face->root is done later in `sfnt_load_face'. Pretty trace messages. * src/sfnt/sfobjs.c (sfnt_load_face): Work harder. Mac bitmap-only fonts are not scalable. Check that `face->header.Units_Per_EM' is not zero. (LOAD_, LOADM_): Pretty trace messages. * src/sfnt/ttsbit0.c (tt_face_load_strike_metrics): Read metrics from `eblc'. * src/sfnt/ttcmap.c (tt_face_build_cmaps), src/sfnt/ttpost.c (load_format_20, load_format_25, tt_face_get_ps_name): Use face->max_profile.numGlyphs, instead of face->root.num_glyphs. | ||
| ce34d122 | 2005-12-17 13:12:49 | * src/truetype/ttinterp.c (Update_Max): Set current size of buffer correctly (so that memory debug system won't panic). | ||
| 674ba91f | 2005-11-16 18:09:27 | formatting | ||
| f7cc1814 | 2005-11-15 17:30:56 | * src/base/fttrigon.c (ft_trig_prenorm): fixed a bug that created invalid computations, resulting in very weird bugs in TrueType bytecode hinted fonts * src/truetype/ttinterp.c: redefined FT_UNUSED_EXEC to not perform a structure copy each time. Wooot. ! | ||
| d6d73989 | 2005-08-16 02:06:01 | * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Update copyright messages. | ||
| 0142e6af | 2005-08-16 01:54:59 | * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Remove original TT_Done_Context and rename TT_Destroy_Context to TT_Done_Context with slight changes. * src/truetype/ttobjs.h (tt_slot_init): New function. * src/truetype/ttobjs.c (tt_driver_init): Initialize execution context here. (tt_slot_init): New function to create extra points for the internal glyph loader. We then use it directly, instead of face's glyph loader, when loading glyph. * src/truetype/ttdriver.c: Use tt_slot_init for glyph slot initialization. (TT_Load_Glyph): Load flag dependencies are handled here. Return error if size is NULL. * src/truetype/ttgload.c: Heavy cleanup and refactor. (TT_Hint_Glyph): New funcion to hint a zone, prepared by caller. (TT_Process_Simple_Glyph): Use loader->pp's instead of recalculating. Use TT_Hint_Glyph. No need to save/restore loader->stream before/after TT_Vary_Get_Glyph_Deltas now. (TT_LOADER_SET_PP): New macro to calculate and set the four phantom points. (TT_Process_Composite_Component, TT_Process_Composite_Glyph, load_truetype_glyph): Refactor load_truetype_glyph into these three functions. Never set exec->glyphSize to 0. (close #13107) Forget glyph frame before calling TT_Process_Simple_Glyph. (TT_Load_Glyph, load_sbit_image, tt_loader_init): Refactor TT_Load_Glyph into these three functions. Set various fields of `glyph' here, instead of in load_truetype_glyph and compute_glyph_metrics. | ||
| 33febc0f | 2004-10-09 07:07:43 | * docs/CHANGES: Updated. Fix handling of NPUSHW if skipped in data stream. * src/truetype/ttinterp.c (opcode_length): Set value for NPUSHW to -2. (SkipCode, TT_RunIns): Use opcode_length value for computation of bytes to be skipped. | ||
| dea712b4 | 2004-08-07 15:08:33 | `Activate' gray-scale specifing hinting within the TrueType bytecode interpreter. This is an experimental feature which should probably be made optional. * src/truetype/ttgload.c (TT_Process_Simple_Glyph, load_truetype_glyph): Move the code to set the pedantic_hinting flag to... (TT_Load_Glyph): Here. Set `grayscale' flag except for `FT_LOAD_TARGET_MONO'. * src/truetyep/ttinterp.c (Ins_GETINFO): Return MS rasterizer version 1.7. Return rotation and stretching info only if glyph is rotated or stretched, respectively. Handle grayscale info. * src/truetype/ttinterp.h (TT_ExecContextRec): Add `grayscale' member. | ||
| 5ab41363 | 2004-07-18 07:15:18 | * include/freetype/cache/ftcglyph.h, src/cache/ftcglyph.c: fixed a dangling pointer bug that happened in very rare cases: i.e. when a new family object was destroyed by an out-of-memory condition during a glyph node initialization. The function FTC_Cache_Lookup would flush the cache and restart the lookup with a bad pointer. * src/cache/ftcmanag.c: fixed a cache flushing bug | ||
| dfa46199 | 2004-03-05 09:26:24 | * Jamfile, vms_make.com, builds/win32/visualc/freetype.dsp, builds/win32/visualc/freetype/vcproj, include/freetype/ftmoderr.h: Add LZW module. * Jamfile.in: Removed. * docs/CHANGES: Updated. * include/freetype/internal/ftobjs.h: s/MIN/FT_MIN/, s/MAX/FT_MAX/, s/ABS/FT_ABS/. Updated all callers. * src/type1/t1load.c (parse_dict), src/pcf/pcfdrivr.c (PCF_Face_Init): Use FT_ERROR_BASE. Add support for PCF fonts compressed with LZW (extension .pcf.Z, created with `compress'). * include/freetype/config/ftoption.h, devel/ftoption.h (FT_CONFIG_OPTION_USE_LZW): New macro. * include/freetype/ftlzw.h: New file. * include/freetype/config/ftheader.h (FT_LZW_H): New macro for ftlzw.h. * src/lzw/*: New files. * src/pcf/pcfdrivr.c: Include FT_LZW_H. (PCF_Face_Init): Try LZW also. * src/gzip/ftgzip.c: s/0/Gzip_Err_Ok/ where appropriate. Beautify. | ||
| 6cda9c48 | 2004-01-22 09:07:12 | * include/freetype/ftcache.h: Delete duplicated definition of FTC_FaceID. * src/cff/cffdrivr.c (cff_get_cmap_info): Call sfnt module's TT CMap Info service function if the cmap comes from sfnt. Return 0 if the cmap is sythesized in cff module. Formatting; updating copyright. | ||
| 4632fccb | 2004-01-15 19:07:44 | * include/freetype/internal/ftmemory.h, src/autohint/ahhint.c, src/base/ftgloadr.c, src/base/ftglyph.c, src/base/ftoutln.c, src/base/ftstroke.c, src/cff/cffload.c, src/truetype/ttgload.c, src/truetype/ttinterp.c: introducing the new FT_ARRAY_COPY and FT_ARRAY_MOVE macros to make copying arrays easier | ||
| 87c0d30f | 2003-12-24 01:10:46 | * include/freetype/fttypes.h src/autofit/afangles.c src/autofit/aflatin.c src/autohint/ahglyph.c src/autohint/ahhint.c src/base/ftcalc.c src/base/ftgloadr.c src/base/ftglyph.c src/base/ftobjs.c src/base/ftsynth.c src/base/fttrigon.c src/cff/cffgload.c src/cid/cidgload.c src/cid/cidload.c src/pfr/pfrgload.c src/pfr/pfrload.c src/pfr/pfrsbit.c src/psaux/psobjs.c src/pshinter/pshalgo.c src/pshinter/pshglob.c src/pshinter/pshrec.c src/raster/ftrend1.c src/sfnt/ttcmap0.c src/smooth/ftsmooth.c src/truetype/ttdriver.c src/truetype/ttgload.c src/truetype/ttinterp.c src/truetype/ttobjs.c src/type1/t1gload.c src/winfonts/winfnt.c: use of the FT_PAD_XXX and FT_PIX_XXX macros to avoid compiler warnings with very pedantic compilers. Hints: (x) & -64 will warn if (x) is not signed.. use (x) & ~63 instead ! | ||
| d90b6738 | 2003-11-28 22:47:26 | Documentation fix. | ||
| 9f051a7f | 2003-11-25 18:15:56 | * src/base/ftcalc.c (FT_MulDiv_No_Round): New function (32 and 64 bit version). * include/freetype/internal/ftcalc.h: Updated. * src/truetype/ttinterp.c (TT_MULDIV_NO_ROUND): New macro. (TT_INT64): Removed. (DO_DIV): Use TT_MULDIV_NO_ROUND. * src/pfr/pfrdrivr.c (pfr_get_metrics): Directly use metrics->x_scale and metrics->y_scale. | ||
| be67c4ef | 2003-11-24 22:54:58 | * src/truetype/ttinterp.c (CUR_Func_move_orig): New macro. (Direct_Move_Orig, Direct_Move_Orig_X, Direct_Move_Orig_Y): New functions. Similar to Direct_Move, Direct_Move_X, and Direct_Move_Y but without touching. (Compute_Funcs): Use new functions. (Round_None, Round_To_Grid, Round_To_Half_Grid, Round_Down_To_Grid, Round_Up_To_Grid, Round_To_Double_Grid, Round_Super, Round_Super_45): Fix rounding of value zero. (DO_DIV): Don't use TT_MULDIV. (Ins_SHC): This instruction actually touches the points. (Ins_MSIRP): Fix undocumented behaviour. * src/truetype/ttinterp.h (TT_ExecContextRec): Updated. * docs/VERSION.DLL: Updated. * src/base/ftobjs.c (FT_Set_Char_Size): Make metrics->x_scale and metrics->y_scale really precise. (FT_Load_Glyph): Update computation of linearHoriAdvance and linearVertAdvance. * src/true/type/ttinterp.c (Update_Max): Use FT_REALLOC. | ||
| 8b6db86b | 2003-08-17 22:09:14 | * include/freetype/config/ftoption.h, devel/ftoption.h, include/freetype/internal/ftobjs.h, include/freetype/internal/tttypes.h, src/truetype/ttinterp.c, src/truetype/ttobjs.c, src/truetype/ttobjs.h: changed the name of TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING to the simpler TT_CONFIG_OPTION_UNPATENTED_HINTING removed the macro TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING. Instead, the same effect can be used by setting a debug-hook with FT_DEBUG_HOOK_UNPATENTED_HINTING globally with FT_Set_Debug_Hook() | ||
| 6e9b3186 | 2003-06-10 10:54:33 | * src/truetype/ttinterp.c (SetSuperRound) <0x30>: Follow Apple's TrueType specification. (Ins_MDRP, Ins_MIRP): Fix single width cut-in test. | ||
| 9a8e3211 | 2003-06-03 15:03:16 | * src/truetype/ttinterp.c (Free_Project, CUR_Func_freeProj): Removed. Unused. Updated all callers. | ||
| f79a7ae0 | 2003-05-21 21:47:25 | * src/gzip/ftgzip.c (ft_gzip_fil_io): Revert change from yesterday; it has already been fixed differently. * src/truetype/ttinterp.c (DO_SFVTL): Add missing braces around if-clause. | ||
| a3f4da8e | 2003-04-29 13:23:47 | Minor cleanups. | ||
| 3ea859f6 | 2003-04-25 11:40:46 | Added the unpatented hinting system, which is compiled only if TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING is defined in ftoption.h | ||
| b442ca17 | 2003-04-23 15:50:27 | Cleanups. | ||
| ba4511b8 | 2003-02-18 22:25:22 | * src/truetype/ttdriver.c, src/truetype/ttobjs.h, src/truetype/ttobjs.c, src/truetype/ttinterp.c, src/base/ftobjs.c: fixing the slight distortion problem that occured due to the latest auto-hinter changes | ||
| b08fe2dc | 2002-08-27 20:20:29 | * massive re-formatting changes to many, many source files. I don't want to list them all here. The operations performed were all logical transformations of the sources: - trying to convert all enums and constants to CAPITALIZED_STYLE, with #define definitions like #define my_old_constants MY_NEW_CONSTANT - big, big update of the documentation comments * include/freetype/freetype.h, src/base/ftobjs.c, src/smooth/ftsmooth.c, include/freetype/ftimage.h: adding support for LCD-optimized rendering though the new constants/enums: FT_RENDER_MODE_LCD, FT_RENDER_MODE_LCD_V FT_PIXEL_MODE_LCD, FT_PIXEL_MODE_LCD_V this is still work in progress, don't expect everything to work correctly though most of the features have been implemented. * adding new FT_LOAD_XXX flags, used to specify both hinting and rendering targets: FT_LOAD_TARGET_NORMAL :: anti-aliased hinting & rendering FT_LOAD_TARGET_MONO :: monochrome bitmaps FT_LOAD_TARGET_LCD :: horizontal RGB/BGR decimated hinting & rendering FT_LOAD_TARGET_LCD_V :: vertical RGB/BGR decimated hinting & rendering note that FT_LOAD_TARGET_NORMAL is 0, which means that the default behaviour of the font engine is _unchanged_. | ||
| 91db04cb | 2002-04-01 14:25:28 | * src/truetype/ttgload.c: 16bit fixes. (TT_Load_Simple_Glyph): Improve debug messages. (load_truetype_glyph): Remove dead code. * src/truetype/ttinterp.c: 16bit fixes. * src/truetype/ttobjs.c: Ditto. * include/freetype/ftsnames.h, include/freetype/internal/sfnt.h, src/cff/cffload.h, src/psaux/psobjs.h, src/truetype/ttinterp.[ch], src/sfnt/ttpost.h: s/index/idx/. formatting, copyright updates. | ||
| b1e6e597 | 2002-03-29 07:43:04 | * builds/vms/ftconfig.h: Rename LOCAL_DEF and LOCAL_FUNC to FT_LOCAL and FT_LOCAL_DEF, respectively, as with other ftconfig.h files. * builds/unix/ftconfig.in: Add argument to FT_LOCAL and FT_LOCAL_DEF. * src/truetype/ttinterp.c: s/FT_Assert/FT_ASSERT/. * builds/unix/configure.ac: Temporarily deactivate creation of ../../Jamfile. * builds/unix/configure: Updated. | ||
| 4b29d587 | 2002-03-25 17:02:26 | removing compiler warnings | ||
| e459d742 | 2002-03-22 13:52:37 | * include/freetype/internal/ftmemory.h, and a lot of other files !!: changed the names of memory macros. Examples: MEM_Set => FT_MEM_SET MEM_Copy => FT_MEM_COPY MEM_Move => FT_MEM_MOVE ALLOC => FT_ALLOC FREE => FT_FREE REALLOC = >FT_REALLOC FT_NEW was introduced to allocate a new object from a _typed_ pointer.. note that ALLOC_ARRAY and REALLOC_ARRAY have been replaced by FT_NEW_ARRAY and FT_RENEW_ARRAY which take _typed_ pointer arguments. This results in _lots_ of sources being changed, but makes the code more generic and less error-prone.. | ||
| b5713c54 | 2002-03-14 11:26:29 | * include/freetype/internal/psglobals.h (removed), include/freetype/internal/pshints.h, src/pshinter/pshglob.h: removing obsolete file * include/freetype/internal/tttypes.h, include/freetype/internal/sfnt.h, src/base/ftnames.c, src/cff/cffdrivr.c, src/sfnt/*.c, src/truetype/*.c: updated SFNT/TrueType type definitions | ||
| bc82f1bb | 2002-03-01 02:26:22 | * include/freetype/ftconfig.h: changed FT_LOCAL xxxx to FT_LOCAL( xxxx ) everywhere in the source. Sames goes for FT_LOCAL_DEF xxxx translated into FT_LOCAL_DEF( xxxxx ) | ||
| 2b6248ba | 2001-07-07 23:24:02 | formatting |