kc3-lang/freetype/src/base/ftcalc.c

Branch :


Log

Author Commit Date CI Message
237c0abf 2014-11-19 22:10:29 Trailing space.
d8632a84 2014-10-25 06:28:18 Improve comments, remove dead code.
aba0f498 2014-10-24 23:50:57 Improve flat corner definition. * include/internal/ftcalc.h (FT_HYPOT): Macro to approximate Euclidean distance with the alpha max plus beta min algorithm. * src/base/ftcalc.c (ft_corner_is_flat): Use it instead of Taxicab metric.
7abdb8cc 2014-10-02 23:13:33 [base] Significant optimization of `ft_div64by32' We shift as many bits as we can into the high register, perform 32-bit division with modulo there, then work through the remaining bits with long division. This optimization is especially noticeable for smaller dividends that barely use the high register. * src/base/ftcalc.c (ft_div64by32): Updated.
c0ce72a6 2014-10-02 06:44:43 Formatting.
74d0aad2 2014-10-01 23:27:15 * src/base/ftcalc.c: Remove miscellaneous type casts.
418e18f3 2014-10-01 22:36:40 [base] Use more common `FT_MSB' implementation with masks. * src/base/ftcalc.c (FT_MSB): Updated.
955aff12 2014-09-30 23:09:39 [base] Clean up. * src/base/ftcalc.c (FT_MOVE_SIGN): New macro for frequently used code.
f78ca0db 2014-09-30 22:53:38 Remove commented out code.
7f49111f 2014-09-25 22:54:38 [base] Avoid unnecessary long division. This applies to `FT_MulDiv' but not to `FT_DivFix', where overflows or lack thereof are predicted accurately. * src/base/ftcalc.c (ft_div64by32): Improve readability. (FT_MulDiv, FT_MulDiv_No_Round) [!FT_LONG64]: Use straight division when multiplication stayed within 32 bits.
5c894842 2014-09-19 22:03:15 * src/base/ftcalc.c: Harmonize code.
ef070d45 2014-09-15 22:06:19 [base] Tighten the overflow check in `FT_MulDiv'. * src/base/ftcalc.c (FT_MulDiv) [!FT_LONG64]: Updated.
336735d8 2014-09-03 22:55:26 [base] Tighten the overflow check in `FT_DivFix'. This fixes a 13-year old bug. The original overflow check should have been updated when rounding was introduced into this function (c2cd00443b). * src/base/ftcalc.c (FT_DivFix) [!FT_LONG64]: Updated. * include/freetype.h (FT_DivFix): Updated documentation.
3212852c 2014-09-03 21:57:42 [base] Tighten the overflow check in `FT_MulFix'. * src/base/ftcalc.c (FT_MulFix) [!FT_LONG64]: Updated.
1ec98b29 2014-08-31 08:47:11 Don't use `register' keyword. Fixes compiler warnings. * src/base/ftcalc.c (FT_Add64) [!FT_LONG64]: Do it. * src/gzip/inftrees.c (huft_build): Ditto. * src/truetype/ttinterp.c (TT_MulFix14_arm): Ditto.
70961e57 2014-08-20 16:19:32 Minor.
8fd87d4e 2014-08-20 00:57:22 [base] Small optimization of `FT_MulFix'. * src/base/ftcalc.c (FT_MulFix): Loosen up the condition for direct 32-bit calculations.
f09326a1 2014-08-20 00:08:38 [base] Use unsigned calculation in `FT_MulDiv'. * src/base/ftcalc.c (FT_MulDiv): Updated to expand 32-bit range.
382f3155 2014-08-18 23:16:15 [base] Remove truncation in `FT_DivFix'. * src/base/ftcalc.c (FT_DivFix): Updated.
5ef2023c 2014-08-14 23:21:46 Minor refactoring. * src/base/ftcalc.c (FT_MulDiv, FT_MulDiv_No_Round): Updated.
c7022467 2014-08-14 23:01:01 Turn FT_MSB into a macro when using gcc builtins. * src/base/ftcalc.c, include/internal/ftcalc.h: Updated.
4728993f 2014-08-11 23:39:34 [base] Restore FT_MulFix inlining. * include/freetype.h (FT_MulFix): Unconditionally defined. * src/base/ftcalc.c [FT_MULFIX_ASSEMBLER]: Move code from here... * include/internal/ftcalc.h [FT_MULFIX_ASSEMBLER]: ... to here, which conditionally replaces the function with an inline version through the macro.
cbbf26b7 2014-07-17 17:27:12 Whitespace.
177982e9 2014-07-15 23:54:34 * src/base/ftcalc.c (FT_MSB): Utilize gcc builtins.
71330ceb 2014-07-15 23:30:45 [base] Move assembler code back in the source file. FT_MulFix assembler used to reside in ftcalc.c before f47d263f1b. * include/config/ftconfig.h, builds/unix/ftconfig.in, builds/vms/ftconfig.h [FT_MULFIX_ASSEMBLER]: Move code from here... * src/base/ftcalc.c [FT_MULFIX_ASSEMBLER]: ... to here.
2f52df4a 2014-07-05 22:29:26 [base] Improve comment.
ceab95a6 2014-07-04 23:01:32 [base] Small optimization of the ancient code. * src/base/ftcalc.c (FT_MulDiv, FT_MulDiv_No_Round): Loosen up the condition for direct 32-bit calculations.
d5159925 2014-03-22 06:20:54 Another revert for the change from 2014-03-18. Problem reported by Nikolaus Waxweiler <madigens@gmail.com>. * src/base/ftcalc.c (FT_MulFix): Ensure that an `FT_MulFix' symbol gets always exported.
87628724 2014-03-18 08:39:35 Fix clang warnings. * src/autofit/aflatin.c (af_latin_metrics_init_blues): Initialize some variables. * src/base/ftcalc.c (FT_MulFix): Only use code if `FT_MULFIX_INLINED' is not defined. * src/bdf/bdfdrivr.c (bdf_cmap_class), src/cache/ftcbasic.c (ftc_basic_image_family_class, ftc_basic_image_cache_class, ftc_basic_sbit_family_class, ftc_basic_sbit_cache_class), src/cache/ftccmap.c (ftc_cmap_cache_class), src/cache/ftcmanag.c (ftc_size_list_class, ftc_face_list_class), src/pcf/pcfdrivr.c (pcf_cmap_class), src/pfr/pfrdrivr.c (pfr_metrics_service_rec): Make function static. * src/type1/t1driver.c (t1_ps_get_font_value): Remove redundant code.
7be2a94a 2014-02-08 13:55:38 Fix clang static analyzer and compiler warnings. * src/autofit/afhints.c (af_glyph_hints_align_weak_points), src/autofit/afloader (af_loader_load_g) <FT_GLYPH_FORMAT_COMPOSITE>, src/base/ftcalc.c (FT_MSB), src/base/ftoutln.c (FT_Outline_Decompose), src/bdf/bdfdrivr.c (bdf_interpret_style), src/cff/cffparse.c (cff_parse_integer), src/cid/cidparse.c (cid_parser_new), src/pfr/pfrload.c (pfr_phy_font_load), src/raster/ftraster.c (Decompose_Curve), src/sfnt/sfdriver.c (sfnt_get_ps_name), src/sfnt/ttcmap.c (tt_cmap12_next, tt_cmap13_next), src/smooth/ftgrays.c (gray_hline): Remove dead code. * src/autofit/afmodule.c (af_property_get_face_globals, af_property_set, af_property_get), src/base/ftbitmap.c (ft_gray_for_premultiplied_srgb_bgra): Make functions static. * src/base/ftobjs.c (ft_remove_renderer): Protect against library == NULL. (ft_property_do): Make function static. * src/base/ftrfork.c: Include `ftbase.h'. * src/sfnt/ttsbit.c (tt_face_load_sbix_image) [!FT_CONFIG_OPTION_USE_PNG], src/type1/t1gload.c (T1_Compute_Max_Advance): Avoid compiler warning. * src/truetype/ttinterp.c (TT_New_Context): Reduce scope of variable.
bcd8c0b0 2013-08-27 21:36:03 Remove `FT_SqrtFixed' function. It's no longer used. * include/freetype/internal/ftcalc.h, src/base/ftcalc.c: Do it.
ba9cf52d 2013-08-05 07:00:59 Comment typo.
fb09a51f 2013-08-04 18:24:02 Add comments to `ft_corner_is_flat'.
b112fa41 2013-05-12 07:29:04 Fix Savannah bug #38967. * src/base/ftcalc.c (FT_DivFix) [FT_LONG64]: Fix cast.
f6aa089f 2013-05-10 07:58:47 */* [FT_CONFIG_OPTION_OLD_INTERNALS]: Remove macro and guarded code.
d135e27c 2013-05-05 10:44:21 Fix 64bit compilation issues. * include/freetype/config/ftconfig.h [FT_LONG64]: Typedef `FT_Int64' here. * src/base/ftcalc.c: Remove typedef of `FT_Int64'. (FT_DivFix): Fix cast. * src/base/fttrigon.c: Remove typedef of `FT_Int64'.
94152819 2013-05-04 16:40:12 More fixes for clang's `sanitize' feature. * src/base/ftcalc.c (FT_DivFix): Use unsigned values for computations which use the left shift operator and convert to signed as the last step. * src/base/fttrigon.c (ft_trig_prenorm, FT_Vector_Rotate, FT_Vector_Length, FT_Vector_Polarize): Ditto. * src/cff/cffgload.c (cff_decoder_parse_charstrings): Simplify. * src/cff/cffload.c (cff_subfont_load): Fix constant. * src/cff/cffparse.c (cff_parse_integer, cff_parse_real, do_fixed, cff_parse_fixed_dynamic): Use unsigned values for computations which use the left shift operator and convert to signed as the last step. * src/cid/cidload.c (cid_get_offset): Ditto. * src/psaux/psconv.c (PS_Conv_ToFixed): Ditto. * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Ditto. * src/truetype/ttinterp.c (TT_MulFix14, TT_DotFix14): Ditto.
059bc335 2013-03-14 10:27:35 */*: Use `FT_THROW'. This is essentially a mechanical conversion, adding inclusion of `FT_INTERNAL_DEBUG_H' where necessary, and providing the macros for stand-alone compiling modes of the rasterizer modules. To convert the remaining occurrences of FT_Err_XXX and friends it is necessary to rewrite the code. Note, however, that it doesn't harm if some cases are not handled since FT_THROW is a no-op.
30f1e6ca 2013-02-01 14:50:08 Fix Savannah bug #38221. This complements commit 83c0ebab. * src/base/ftcalc.c (FT_MulDiv_No_Round): Don't enclose with `TT_USE_BYTECODE_INTERPRETER'.
e9f330ad 2013-01-24 09:12:56 [base] Make `FT_Hypot' really internal. * include/freetype/fttrigon.h (FT_Hypot): Move to... * include/freetype/internal/ftcalc.h: This file. * src/base/fttrigon.c (FT_Hypot): Move to... * src/base/ftcalc.c: This file. Include FT_TRIGONOMETRY_H. * src/truetype/ttgload.c: Don't include FT_TRIGONOMETRY_H.
869fb8c4 2013-01-23 19:43:28 [base] Split out MSB function. * src/base/fttrigon.c (ft_trig_prenorm): Borrow from here. * include/freetype/internal/ftcalc.h (FT_MSB): Declare here. * src/base/ftcalc.c (FT_MSB): Define here.
ba67957d 2012-03-03 12:27:18 Fix Savannah bug #35660. For some divisions, we use casts to 32bit entities. Always guard against division by zero with these casts also. * src/base/ftcalc.c (ft_div64by32): Remove redundant cast. (FT_MulDiv, FT_MulDiv_No_Round): Add 32bit cast. (FT_DivFix): Add 32bit cast (this omission triggered the bug).
1749d8bc 2012-01-17 02:00:24 Remove trailing spaces.
e866cf3f 2009-08-01 00:32:06 Improve bitmap size or pixel variables for 16-bit systems.
0d226c31 2009-08-01 00:30:24 base: Prevent some overflows on LP64 systems.
b211651a 2008-09-12 16:27:48 * autogen.sh, builds/unix/configure.raw, include/freetype/config/ftconfig.h, builds/unix/ftconfig.in: Minor beautifying. * include/freetype/ftadvanc.h, include/freetype/ftgasp.h, include/freetype/ftlcdfil.h: Protect against FreeType 1. Some other minor fixes. * devel/ftoption.h: Synchronize with include/freetype/config/ftoption.h. Formatting, documentation improvements.
f47d263f 2008-09-02 02:21:58 * include/freetype/ftoption.h, include/freetype/ftconfig.h, builds/unix/ftconfig.in, include/freetype/freetype.h, src/base/ftcalc.c: Make FT_MulFix an inlined function. Also provide an assembler implementation for ARM architectures. this is done to speedup FreeType a little (on x86 3% when loading+hinting, 10% when rendering, ARM savings are more important though). Disable this by undefining FT_CONFIG_OPTION_INLINE_MULFIX in ftconfig.h
50997cd7 2008-07-16 21:03:40 * src/pfr/pfrdrivr.c (pfr_get_advance): Fix off-by-one error. * src/base/ftcalc.c (FT_MulFix): Fix portability issue. * src/sfnt/ttpost.c (MAC_NAME) [!FT_CONFIG_OPTION_POSTSCRIPT_NAMES]: Fix compiler warning.
4e7d984d 2008-06-27 22:26:11 * src/ftlyph.c (FT_Matrix_Multiply, FT_Matrix_Invert): Move to... * src/ftcalc.c: Here. This fixes Savannah bug #23729.
ad83e05b 2008-06-15 11:06:12 * src/base/ftcalc.c (FT_MulFix) <asm>: Protect registers correctly from clobbering. Patch from Savannah bug report #23556. * docs/CHANGES: Document it.
e6e6eade 2008-05-14 23:05:38 Finish fix of scaling bug of CID-keyed CFF subfonts. * include/freetype/internal/ftcalc.h, src/base/ftcalc.c (FT_Matrix_Multiply_Scaled, FT_Vector_Transform_Scaled): New functions. * src/cff/cffobjs.h (CFF_Internal): New struct. It is used to provide global hinting data for both the top-font and all subfonts (with proper scaling). * src/cff/cffobjs.c (cff_make_private_dict): New function, using code from `cff_size_init'. (cff_size_init, cff_size_done, cff_size_select, cff_size_request): Use CFF_Internal and handle subfonts. (cff_face_init): Handle top-dict and subfont matrices correctly; apply some heuristic in case of unlikely matrix concatenation results. This has been discussed with people from Adobe (thanks goes mainly to David Lemon) who confirm that the CFF specs are fuzzy and not correct. * src/cff/cffgload.h (cff_decoder_prepare): Add `size' argument. * src/cff/cffgload.c (cff_builder_init): Updated. (cff_decoder_prepare): Handle hints globals for subfonts. Update all callers. (cff_slot_load): Handling scaling of subfonts properly. * src/cff/cffparse.c (cff_parse_fixed_dynamic): New function. (cff_parse_font_matrix): Use it. * src/cff/cfftypes.h (CFF_FontDictRec): Make `units_per_em' FT_ULong. * docs/CHANGES: Document it.
8271e5e4 2008-04-13 21:59:29 whitespace
b792017f 2007-06-11 05:37:35 experimental changes for the Latin auto-hinter. note that the new code is disabled by default.
913a3650 2006-11-19 09:19:17 Because FT_Load_Glyph expects CID values for CID-keyed fonts, the test for a valid glyph index must be deferred to the font drivers. This patch fixes Savannah bug #18301. * src/base/ftobjs.c (FT_Load_Glyph): Don't check `glyph_index'. * src/bdf/bdfdrivr.c (BDF_Glyph_Load), src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph), src/pcf/pcfdrivr.c (PCF_Glyph_Load), src/pfr/pfrobjs.c (pfr_slot_load), src/truetype/ttdriver.c (Load_Glyph), src/type1/t1gload.c (T1_Load_Glyph), src/winfonts/winfnt.c (FNT_Load_Glyph): Check validity of `glyph_index'.
111b5aef 2006-11-03 09:40:12 * src/base/ftcalc.c: Don't use `long long' but `FT_Int64'. Formatting
effd15de 2006-11-02 17:21:02 - merging af_corner_XXX and psh_corner_XXX functions into ft_corner_XXX versions in ftcalc.c - more auto-fitter debugging support
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
545c4e56 2006-05-17 22:55:04 * src/truetype/ttgload.c (TT_Load_Composite_Glyph) [FT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Make it compilable again. Formatting, documentation fixes.
281679de 2006-05-17 13:34:21 * include/freetype/internal/tttypes.h, src/autofit/afangles.c, src/autofit/afcjk.c, src/autofit/afhints.c, src/autofit/aflatin.c, src/autofit/aftypes.h, src/base/ftcalc.c, src/base/ftoutln.c, src/gzip/ftgzip.c, src/psaux/psconv.c, src/truetype/ttgload.c, src/type1/t1gload.c: this is a major patch used to drastically improve the performance of loading glyphs. This both speeds up loading the glypn vector themselves and the auto-fitter. note that we've started using inline assembler with GCC to implement FT_MulFix, given that this function is so damn important for the engine's performance. the resulting speed-up is about 25%.
8e6f8c4d 2006-02-17 08:07:09 Formatting, copyright years, documentation improvements.
cda2d957 2006-02-16 22:45:31 * builds/amiga/src/base/ftsystem.c, devel/ftoption.h include/freetype/ftcache.h, include/freetype/ftoutln.h, include/freetype/cache/ftccache.h, include/freetype/cache/ftccmap.h, include/freetype/config/ftoption.h, include/freetype/internal/ftcalc.h, include/freetype/internal/ftdriver.h, include/freetype/internal/ftmemory.h, include/freetype/internal/ftobjs.h, include/freetype/internal/ftrfork.h, include/freetype/internal/psaux.h, include/freetype/internal/sfnt.h, include/freetype/internal/t1types.h, include/freetype/internal/tttypes.h, src/base/ftcalc.c, src/base/ftdbgmem.c, src/base/ftobjs.c, src/base/ftsystem.c, src/base/ftutil.c, src/bdf/bdfdrivr.c, src/cache/ftccache.c, src/cache/ftccback.h, src/cache/ftccmap.c, src/cache/ftcmanag.c, src/cff/cffdrivr.c, src/cid/cidriver.c, src/pcf/pcfdrivr.c, src/pfr/pfrdrivr.c, src/psaux/psauxmod.c, src/sfnt/sfdriver.c, src/truetype/ttdriver.c, src/type1/t1driver.c, src/type1/t1objs.c, src/type42/t42drivr.c, src/winfonts/winfnt.c: massive changes to the internals to respect the internal object layouts and exported functions of FreeType 2.1.7. Note that the cache sub-system cannot be fully retrofitted, unfortunately.
35bfc0f1 2005-11-17 01:53:07 * src/base/ftcalc.c (FT_MulTo64): Commented out. * include/freetype/internal/ftcalc.h (FT_SqrtFixed), src/base/ftcalc.c (FT_SqrtFixed), include/freetype/internal/ftdebug.h (FT_Trace_Get_Count, FT_Trace_Get_Name, FT_Message, FT_Panic), src/base/ftdebug.c (FT_Trace_Get_Count, FT_Trace_Get_Name, FT_Message, FT_Panic), include/freetype/internal/ftobjs.h (FT_New_Memory, FT_Done_Memory), include/freetype/internal/ftstream.h (FT_Stream_Open), src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory, FT_Stream_Open): s/FT_EXPORT/FT_BASE/. * builds/exports.mk: Manually add TT_New_Context to EXPORTS_LIST too.
d829ff76 2005-11-12 17:07:11 * src/cache/ftccache.c (FTC_Cache_Clear), src/cache/ftcmanag.c (FTC_Manager_Check): Remove FT_EXPORT_DEF tag. * src/base/ftcalc.c (FT_Add64): Remove FT_EXPORT_DEF tag. (FT_Div64by32, FT_Sqrt32): Commented out. Unused. * include/freetype/internal/ftcalc.h (SQRT_32): Removed. Unused. (FT_Sqrt32): Commented out. Unused. * include/freetype/cache/ftccache.h: s/ftc_node_destroy/FTC_Node_Destroy/. * src/cache/ftccback.h (ftc_node_destroy): New declaration. * src/cache/ftccache.c (ftc_node_destroy): Use FT_LOCAL_DEF tag. (FTC_Node_Destroy): New exported wrapper function for ftc_node_destroy. * src/cache/ftcmanag.c: Include ftccback.c.
cee37a3b 2005-11-12 07:34:40 Clean-up.
9fbd2ab8 2005-10-28 16:14:14 - various performance enhancements - fixing apinames.c, adding support for Watcom and Borland compilers - adding generation of exported symbols list to the build system, including the Unix one !! sorry Werner, I have no time to document this in ChangeLog at the moment
ece8b20e 2004-12-13 23:16:59 Documentation updates, whitespace.
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.
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 !
6f20dd50 2003-11-26 08:24:08 * src/base/ftcalc.c, include/freetype/internal/ftcalc.h (FT_MulDiv_No_Round): Surround code with `#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER ... #endif'.
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.
43ba0842 2003-06-23 19:26:53 * src/tools/glnames.py: Updated to AGL 2.0. * src/psnames/pstables.h: Regenerated. * include/freetype/cache/ftcglyph.h, include/freetype/ttnameid.h, src/base/ftcalc.c, src/base/fttrigon.c, src/cff/cffgload.c, src/otlayout/otlgsub.c, src/pshinter/pshrec.c, src/psnames/psmodule.c, src/sfnt/sfobjs.c, src/truetype/ttdriver.c: Decorate constants with `U' and `L' if appropriate. * include/freetype/ftmoderr.h: Updated to include recent module additions. * src/pshinter/pshnterr.h (FT_ERR_BASE): Define as `FT_Mod_Err_PShinter'. * src/type42/t42error.h (FT_ERR_BASE): Define as `FT_Mod_Err_Type42'. * src/pshinter/pshrec.h (PS_HINTS_MAGIC): Removed. Not used. * include/freetype/config/ftconfig.h [__MWERKS__]: Define FT_LONG64 and FT_INT64.
04728a8b 2002-04-02 14:50:31 Fixes from the stable branch: * include/freetype/config/ftoption.h (FT_CONFIG_OPTION_OLD_CALCS): Removed. [FT_CONFIG_OPTION_OLD_CALCS]: Removed. * include/freetype/internal/ftcalc.h, src/base/ftcalc.c [FT_CONFIG_OPTION_OLD_CALCS]: Removed. * src/base/fttrigon.c (FT_Vector_Length): Change algorithm to match output of FreeType 1. * src/pshinter/pshglob.c (psh_globals_scale_widths): Fixed a small bug that created un-even stem widths when hinting Postscript fonts. formatting, updating copyright
f8ba2005 2002-03-30 13:16:35 * include/freetype/t1tables.h (t1_blend_max): Fix typo. * src/base/ftstream.c: Simplify FT_ERROR calls. formatting, copyright update
0d9165e1 2002-03-07 21:59:59 * src/base/ftdbgmem.c (ft_mem_table_resize, ft_mem_table_new, ft_mem_table_set, ft_mem_debug_alloc, ft_mem_debug_free, ft_mem_debug_realloc, ft_mem_debug_done, FT_Alloc_Debug, FT_Realloc_Debug, FT_Free_Debug): Fix compiler warnings. * src/base/ftcalc.c (FT_MulFix): Ditto. * src/cff/cffdrivr.c (cff_get_name_index): Ditto. * src/cff/cffobjs.c (CFF_Size_Get_Global_Funcs, CFF_Size_Init, CFF_GlyphSlot_Init): Ditto. * src/cid/cidobjs.c (CID_GlyphSlot_Init, CID_Size_Get_Globals_Funcs): Ditto. * src/type1/t1objs.c (T1_Size_Get_Globals_Funcs, T1_GlyphSlot_Init): Ditto. * src/pshinter/pshmod.c (pshinter_interface): Use `static const'. * src/winfonts/winfnt.c (FNT_Get_Next_Char): Remove unused variables. * include/freetype/internal/psaux.h (T1_Builder_Funcs): Renamed to... (T1_Builder_FuncsRec): This. (T1_Builder_Funcs): New typedef. (PSAux_Interface): Remove compiler warnings. * src/psaux/psauxmod.c (t1_builder_funcs), src/psaux/psobjs.h (t1_builder_funcs): Updated. * src/pshinter/pshglob.h (PSH_Blue_Align): Replaced with ... (PSH_BLUE_ALIGN_{NONE,TOP,BOT}): New defines. (PSH_AlignmentRec): Updated. * include/freetype/internal/ftstream.h (GET_Char, GET_Byte): Fix typo. * include/freetype/internal/ftgloadr.h (FT_SubGlyph): Ditto. * src/base/ftstream (FT_Get_Char): Rename to... (FT_Stream_Get_Char): This. * src/base/ftnames.c (FT_Get_Sfnt_Name): s/index/idx/ -- `index' is a built-in function in gcc, causing warning messages with gcc 3.0. * src/autohint/ahglyph.c (ah_outline_load): Ditto. * src/autohint/ahglobal.c (ah_hinter_compute_blues): Ditto. * src/cache/ftcmanag.c (ftc_family_table_alloc, ftc_family_table_free, FTC_Manager_Done, FTC_Manager_Register_Cache): Ditto. * src/cff/cffload.c (cff_new_index, cff_done_index, cff_explicit_index, CFF_Access_Element, CFF_Forget_Element, CFF_Get_Name, CFF_Get_String, CFF_Load_SubFont, CFF_Load_Font, CFF_Done_Font): Ditto. * src/psaux/psobjs.c (PS_Table_Add, PS_Parser_LoadField): Ditto. * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Ditto. * src/pshinter/pshrec.c (ps_mask_test_bit, ps_mask_clear_bit, ps_mask_set_bit, ps_dimension_add_t1stem, ps_hints_t1stem3, * src/pshinter/pshalgo1.c (psh1_hint_table_record, psh1_hint_table_record_mask, psh1_hint_table_activate_mask): Ditto. * src/pshinter/pshalgo2.c (psh2_hint_table_record, psh2_hint_table_record_mask, psh2_hint_table_activate_mask): Ditto. * src/sfnt/ttpost.c (Load_Format_20, Load_Format_25, TT_Get_PS_Name): Ditto. * src/truetype/ttgload.c (TT_Get_Metrics, Get_HMetrics, load_truetype_glyph): Ditto. * src/type1/t1load.c (parse_subrs, T1_Open_Face): Ditto. * src/type1/t1afm.c (T1_Get_Kerning): Ditto. * include/freetype/cache/ftcmanag.h (ftc_family_table_free): Ditto.
c3b21608 2001-12-05 01:22:05 Formatting. Cleaning up of ChangeLog. * docs/license.txt: s/X Windows/X Window System/. * src/raster/ftraster.c: Fix definition condition of MEM_Set(). * src/smooth/ftgrays.c (M_Y): Change value to 192. * src/base/ftdbgmem.c (ft_mem_table_destroy): Fix printf() parameter. Remove unused variable. * src/cache/ftcimage.c (ftc_image_node_init, ftc_image_node_compare): Remove unused variables. * src/cache/ftcsbits.c (ftc_sbit_node_weight): Remove unused variable. * src/raster/ftraster.c (MEM_Set): Move definition down to avoid compiler warning. * src/autohint/ahhint.c (ah_hinter_hint_edges): Use UNUSED() to avoid compiler warnings. * src/pcf/pcfread.c (tableNames): Use `const'. (pcf_read_TOC): Change counter name to avoid compiler warning. Use `const'. * src/pshinter/pshrec.c (ps_hints_close): Remove redundant declaration. * src/pshinter/pshalgo1.c (psh1_hint_table_init): Rename variables to avoid shadowing. * src/pshinter/pshalgo2.c (psh2_hint_table_activate_mask): Ditto. * src/type1/t1objs.h: Remove double declarations of `T1_Size_Init()' and `T1_Size_Done()'.
1c5802a4 2001-10-18 09:51:09 updated FT_Div64by32
6870f4cf 2001-08-18 05:09:42 * src/base/ftcalc.c (FT_MulDiv): Fixed serious typo.
415235df 2001-06-28 17:49:10 finishing function header formatting updating copyrights
f814d0fa 2001-06-27 16:18:10 First round in converting type foo ( ... ) to type foo ( ... ) Other minor formatting issues.
2bf99344 2001-06-24 17:23:45 fixed the 64-bits division computation for 16-bits systems
cf24d515 2001-06-18 14:23:45 Minor cleanups to remove compiler warnings. * include/freetype/cache/ftcmanag.h (FTC_MAX_BYTES_DEFAULT): Use `L' for constant. * include/freetype/config/ftoption.h (FT_RENDER_POOL_SIZE): Ditto. * src/base/ftcalc.c (FT_MulDiv): Use `L' for constant. * src/base/ftglyph.c (FT_Glyph_Get_CBox): Remove `error' variable. * src/base/fttrigon.c (ft_trig_arctan_table): Use `L' for constants. * src/base/ftobjs.c (FT_Done_Size): Fix return value. (FT_Set_Char_Size, FT_Set_Pixel_Sizes, FT_Get_Kerning): Remove unused `memory' variable. * src/autohint/ahglyph.c (ah_get_orientation): Use `L' for constant. * src/autohint/ahhint.c (ah_hint_edges_3, ah_hinter_align_edge_points): Remove unused `before' and `after' variables. (ah_hinter_align_weak_points): Remove unused `edge_limit' variable. (ah_hinter_load): Remove unused `new_advance', `start_contour', and `metrics' variables. * src/cff/cffload.c (CFF_Load_Encoding): Remove dead code to avoid compiler warning. * src/cff/cffobjs.c (CFF_Init_Face): Remove unused `base_offset' variable. * src/cff/cffgload.c (CFF_Parse_CharStrings): Remove unused `outline' variable. (cff_compute_bias): Use `U' for constant. * src/cid/cidload.c (cid_decrypt): Ditto. * src/psaux/psobjs.c (T1_Decrypt): Ditto. * src/psaux/t1decode.c (T1_Decoder_Parse_CharStrings): Ditto. * src/sfnt/ttload.c (TT_Load_Kern): Remove unused `version' variable. * src/sfnt/ttsbit.c (TT_Load_SBit_Image): Remove unused `top' variable. * src/truetype/ttgload.c (load_truetype_glyph): Remove unused `num_contours' and `ins_offset' variables. (compute_glyph_metrics): Remove unused `Top' and `x_scale' variables. (TT_Load_Glyph): Remove unused `memory' variable. * src/smooth/ftgrays.c (grays_raster_render): Use `L' for constants.
9e528d03 2001-06-16 07:48:30 formatting
ac6cc419 2001-06-14 12:34:00 modified the TrueType interpreter to let it use the new trigonometric functions provided in "fttrigon.h". This gets rid of some old 64-bit computation routines, as well as many warnings when compiling the library with the "long long" 64-bit integer type.
1b3a0014 2001-06-11 13:26:11 * src/base/ftcalc.c (FT_MulDiv, FT_DivFix, FT_Sqrt64): Remove compiler warnings.
4312f427 2001-05-24 15:00:19 moving documents to the "docs" directory
66cb4790 2001-05-14 14:04:23 * src/base/ftcalc.c (FT_DivFix): fixed a bug in the 64-bit code that created incorrect scale factors !! * src/autohint/ahglobal.c, src/autohint/ahglyph.c, src/autohint/ahhint.c: fixed the incorrect blue zone computations, and improved the composite support. Note that these changes result in improved rendering, while sometimes introducing their own artefacts. That's probably the last big change to the autohinter before the introduction of its complete replacement..
fc26ecd9 2001-05-08 13:52:13 formatting
750ddcd5 2001-05-08 12:58:07 * src/pcfdriver.c: fixed incorrect bitmap width computation * docs/docmaker.py: updated the DocMaker script in order to add command line options (--output,--prefix,--title), fix the erroneous line numbers reported during errors and warnings, and other formatting issues.. * src/base/ftcalc.c: various tiny fixes related to rounding in 64-bits routines and pseudo"optimisations" :-)
3780273e 2001-04-26 13:34:36 * builds/unix/config.guess, builds/unix/config.sub: Updated to latest versions from gnu.org. * builds/compiler/gcc-dev.mk: Add `-Wno-long-long' flag. * include/freetype/internal/ftcalc.h: Define FT_SqrtFixed() uncoditionally. * src/base/ftbbox.c: Include FT_INTERNAL_CALC_H. Fix compiler warnings. * src/base/ftcalc.c: Fix (potential) compiler warnings. * src/base/ftcalc.c (FT_SqrtFixed): Corrected/optimized the 32-bit fixed-point square root computation. It is now used even with 64-bits integers, as it is _much_ faster than calling FT_Sqrt64 :-) * src/base/ftbbox.c: Removed invalid "#include FT_BEZIER_H" line. * src/base/ftbbox.c (BBox_Cubic_Check): Rewrote function to use direct computations with 16.16 values instead of sub-divisions. It is now slower, but proves a point :-) * src/raster/ftraster.c, src/smooth/ftgrays.c, src/base/ftbbox.c: Fixed the bezier stack depths. * src/base/ftcalc.c (FT_MulFix): Minor rounding fix. * builds/beos: Added BeOS-specific files to the old build system (no changes were necessary to support BeOS in the Jamfile though). * ftconfig.h, ftoption.h: Updated "ftconfig.h" to detect 64-bit int types on platforms where Autoconf is not available). Also removed FTCALC_USE_LONG_LONG and replaced it with FT_CONFIG_OPTION_FORCE_INT64. * builds/win32/freetype.dsp: Updated the Visual C++ project file. Doesn't create a DLL yet. * cffgload.c: Removed a compilation warning.
c2cd0044 2001-04-26 00:21:48 minor optimisations in ftcalc.c
ec46b28d 2001-04-25 22:56:30 * src/base/ftcalc.c (FT_SqrtFixed): corrected/optimised the 32-bit fixed-point square root. it is now used even with 64-bits ints, as it's simply _much_ faster than calling FT_Sqrt64 :-) * src/base/ftbbox.c : removed invalid "#include FT_BEZIER_H" line
caf72cd6 2001-04-25 18:11:16 * src/base/ftbbox.c (BBox_Cubic_Check): rewrote function to use direct computations with 16.16 values instead of sub-divisions. It is now slower, but proves a point :-) * src/raster/ftraster.c, src/smooth/ftgrays.c, src/base/ftbbox.c : fixed the bezier stack depths.. * src/base/ftcalc.c (FT_MulFix): minor rounding fix * builds/beos : added BeOS-specific files to the old build system (no changes were necessary to support BeOS in the Jamfile though)
29bac136 2001-03-11 11:28:39 * TODO: Updated. * src/cid/cidload.c (parse_font_matrix): Added units_per_EM * src/type1/t1load.c (parse_font_bbox): Changed to use FT_Fixed
c2f44c16 2001-03-10 19:02:51 Added implementation of three new functions: FT_RoundFix, FT_CeilFix, and FT_FloorFix.
cc069beb 2000-12-08 16:17:16 cleanups
19ed8afe 2000-12-08 02:42:29 - updated all source files to adhere to the new inclusion scheme - the CFF loader now loads the encodings and charset tables though doesn't use them for now
ada9503d 2000-11-29 17:48:57 * src/base/ftcalc.c (FT_SqrtFixed), src/base/ftobjs.c (FT_Set_Renderer): Use FT_EXPORT_DEF. * src/cache/ftcimage.c (FTC_Image_Cache_Lookup), src/cache/ftcmanag.c (FTC_Manager_Done, FTC_Manager_Reset, FTC_Manager_Lookup_Face, FTC_Manager_Lookup_Size, FTC_Manager_Register_Cache), src/cache/ftcsbits.c (FTC_SBit_Cache_Lookup): Ditto. * src/include/freetype/cache/ftcglyph.h (FTC_GlyphNode_Init), src/include/freetype/ftmac.h (FT_New_Face_From_FOND): Use FT_EXPORT.
90a03301 2000-11-07 17:21:11 All function comments are now removed from source files (and moved to the header files if necessary). Some minor fixes to have `make multi' run successfully (with gcc and g++). Fixing compiler warnings.
4b68007b 2000-11-07 06:30:29 Complementing David's changes with formatting, adding documentation, etc. More `*'-convention formatting, adding the `a' resp. `an' prefix to variables.
76a5f623 2000-11-04 01:55:49 major reformatting of the sources: FT_EXPORT_DEF => FT_EXPORT FT_EXPORT_FUNC => FT_EXPORT_DEF BASE_DEF => FT_BASE BASE_FUNC => FT_BASE_DEF LOCAL_DEF => FT_LOCAL LOCAL_FUNC => FT_LOCAL_DEF LOCAL_FUNC_X => FT_CALLBACK_DEF LOCAL_DEF_X => FT_CALLBACK_TABLE FT_CPLUSPLUS => FT_CALLBACK_TABLE_DEF