ChangeLog


Log

Author Commit Date CI Message
Werner Lemberg ef6a3523 2014-12-02T21:16:59 [docmaker] Properly handle empty rows in Synopsis. * src/tools/docmaker/tohtml.py (HtmlFormatter::section_enter): Emit ` ' for empty fields.
Werner Lemberg 0e96f050 2014-12-02T11:08:31 [docmaker] Thinko. * src/tools/docmaker/content.py (DocBlock::get_markup_words_all): Emit `/empty/' string for first element also.
Werner Lemberg 102d4a76 2014-12-02T10:27:40 [docmaker] Honour empty lines in `<Order>' section element. This greatly improves the readability of the `Synopsis' links. * src/tools/docmaker/content.py (DocBlock::get_markup_words_all): Insert string `/empty/' between items. * src/tools/docmaker/formatter.py (Formatter::section_dump): Make it robust against nonexistent keys. * src/tools/docmaker/tohtml.py (HtmlFormatter::section_enter): Emit empty <td> elements for `/empty/'.
Werner Lemberg 2af25ac0 2014-12-02T08:38:57 [docmaker] Ensure Python 3 compatibility. * src/tools/docmaker/content.py (ContentProcessor::set_section, ContentProcessor::finish): Replace `has_key' function with `in' keyword. * src/tools/docmaker/formatter.py (Formatter::__init__): Replace sorting function with a key generator. (Formatter::add_identifier): Replace `has_key' function with `in' keyword. * src/tools/docmaker/tohtml.py (HtmlFormatter::html_source_quote): Replace `has_key' function with `in' keyword. (HtmlFormatter::index_exit, HtmlFormatter::section_enter): Use integer division. s/<>/>/. * src/tools/docmaker/utils.py: Import `itertools'. (index_sort): Replaced by... (index_key): ... this new key generator (doing exactly the same).
Werner Lemberg 80bfeb1c 2014-12-01T10:07:52 [docmaker] Don't output a block multiple times. This bug was hidden by not processing all lines of `<Order>' blocks. * src/tools/docmaker/formatter.py (Formatter::section_dump): Filter out field names.
Werner Lemberg 0dbad763 2014-12-01T08:44:48 [docmaker] Use field values as HTML link targets where possible. * src/tools/docmaker/tohtml.py (HtmlFormatter::make_block_url): Accept second, optional argument to specify a name. (HtmlFormatter::html_source_quote): Link to field ID if possible. (HtmlFormatter::print_html_field_list): Emit `id' attribute.
Werner Lemberg 785b1d08 2014-11-30T22:16:34 [docmaker] Allow empty lines in `<Order>' blocks. Before this patch, the suggested order of entries stopped at the first empty line. Obviously, nobody noticed that this problem caused a much reduced set of links in the `Synopsis' sections; in particular, the `<Order>' blocks contain a lot of entries that wouldn't be listed otherwise... * src/tools/docmaker/content.py (DocBlock::get_markup_words_all): New function to iterate over all items. (DocSection::process): Use it.
Werner Lemberg 16b3e620 2014-11-30T20:58:27 * src/tools/docmaker/sources.py (column) [Format 2]: Fix regexp. After the single asterisk there must be no other immediately following asterisk.
Werner Lemberg 434bc695 2014-11-29T23:12:55 * src/tools/docmaker/tohtml.py: Improve CSS for vertical spacing.
Werner Lemberg 51987eaf 2014-11-29T22:19:29 [docmaker] Improve HTML code for table of contents.. * src/toold/docmaker/tohtml.py: Introduce a new table class `toc', together with proper CSS.
Werner Lemberg aa834ce5 2014-11-29T20:08:29 [docmaker] Provide higher-level markup and simplify HTML. * src/tools/docmaker/tohtml.py: Instead of using extraneous `<div>' elements, use CSS descendants (of class `section') to format the data. Also remove reduntant <p> and <br> elements, replacing them with proper CSS. Globally reduce page width to 75%. (block_header): Rename <div> class to `section'.
Werner Lemberg 3bb97023 2014-11-29T16:12:37 [docmaker] Add `top' links after blocks. * src/tools/docmaker/tohtml.py (block_footer_middle): Implement it.
Werner Lemberg a31f9715 2014-11-29T07:18:44 * src/tools/docmaker/tohtml.py: Improve CSS for fields. Make fields align horizotnally relative to full line width.
Werner Lemberg 8f795118 2014-11-29T06:49:15 * src/tools/docmaker/tohtml.py: Fix index and TOC templates. This thinko was introduced 2014-11-27.
Werner Lemberg ba1ba0ca 2014-11-28T22:04:14 [docmaker] Format field lists with CSS. This also simplifies the inserted HTML code. * src/tools/docmaker/tohtml.py (HtmlFormatter::print_html_field_list): Do it.
suzuki toshiya 348fffa8 2014-11-28T16:05:59 Fix compiler warning to the comparison between signed and unsigned variable. * src/pfr/pfrsbit.c (pfr_slot_load_bitmap): Fix the comparison between `ypos + ysize' and FT_INT_{MAX,MIN}.
Werner Lemberg 46d4dc86 2014-11-28T05:49:56 [docmaker] Replace empty `<td>' with CSS.. * src/tools/docmaker/tohtml.py (HtmlFormatter::section_enter): Do it.
Werner Lemberg 984e0717 2014-11-28T05:33:58 [docmaker] Replace some `<table>' tags with `<h4>' and `<div>'. * src/tools/docmaker/tohtml.py (marker_*): Use `<h4>'. (source_*): Use `<div>'. (HtmlFormatter::block_enter): s/<h4>/<h3>/.
suzuki toshiya 9ee6a0a0 2014-11-28T11:14:18 Fix compiler warning to conversion specifiers in debug messages. * src/autofit/afhints.c (af_glyph_hints_dump_points): Add length modifier to dump long integers. (af_glyph_hints_dump_segments, af_glyph_hints_dump_edges): Ditto.
Werner Lemberg 7ea36340 2014-11-27T19:38:31 * src/tools/docmaker/tohtml.py: Usee more CSS for index.
Werner Lemberg edcf817e 2014-11-27T19:28:48 [docmaker] Replace `name' attribute of `<a>' with `id'. * src/tools/docmaker/tohtml.py (HtmlFormatter::block_enter): Do it.
Werner Lemberg 26d699ed 2014-11-27T19:22:52 * src/tools/docmaker/tohtml.py: Remove remaining `width' attributes. For `Index' and `TOC' links, we now simply use the `text-align' CSS property of `<td>' to enforce flush-left and flush-right, eliminating the hack with an empty, full-width `<td>' element inbetween. The change also enforces the same (smaller) size for all index and TOC links.
suzuki toshiya 1b12f5d1 2014-11-28T01:22:26 * src/cff/cf2font.c: Include `ftcalc.h' to use FT_MSB(), cf2font.c could not find it under `make multi' build.
suzuki toshiya 2676e07a 2014-11-28T00:58:25 * src/smooth/ftsmooth.c (ft_smooth_render_generic): Remove unrequired negative value check for `width' and `height'.
Werner Lemberg dd3fee07 2014-11-27T13:20:52 * src/tools/docmaker/tohtml.py: More HTML table refactoring. Replace some `<table>' tags with `<div>' to simplify structure. Move `bgcolor' attribute to CSS. Replace most `width' attributes with CSS. The remaining instances (providing a similar effect as LaTeX's `\hfill' command) are removed in a later patch.
Werner Lemberg a5ad26af 2014-11-27T10:52:24 * src/tools/docmaker/tohtml.py: Replace <font> with CSS.
Werner Lemberg ba67c619 2014-11-27T10:51:49 * src/tools/docmaker/tohtml.py: Center <table> with CSS.
Werner Lemberg 5594fa54 2014-11-27T10:50:50 * src/tools/docmaker/tohtml.py: Replace `<center>' with `<div>'.
Werner Lemberg 8585cf56 2014-11-27T10:49:05 * src/tools/docmaker/tohtml.py: Remove redundant `<center>' tags. This starts a series of commits into the direction of generating valid HTML 5 code, especially using much more CSS.
suzuki toshiya 1b057040 2014-11-27T17:53:20 Prevent too negative values (< FT_INT_MIN) in bitmap metrics, suggested by Alexei. * src/pfr/pfrsbit.c (pfr_slot_load_bitmap): Prevent too negative values in `xpos' and `ypos + ysize'. * src/smooth/ftsmooth.c (ft_smooth_render_generic): Prevent too negative values in `x_left' and `y_top'. Either negative values in `width' and `height' are checked.
Werner Lemberg c52882ab 2014-11-27T08:01:25 [docmaker] Produce better HTML code. * src/tools/docmaker/tohtml.py: Always use double quotes for attribute values. (source_footer): Close `td' and `tr' groups.
Werner Lemberg dbb93157 2014-11-27T07:20:48 Use better way to disable creation of .pyc files for `make refdoc'. Python 2.6 was released in 2008... * builds/freetype.mk (refdoc): Use python's `-B' option. * builds/detect.mk (std_setup, dos_setup): Mention required python version for `refdoc' target.
Werner Lemberg e8a5c33e 2014-11-27T06:48:37 * src/tools/docmaker/sources.py (re_bold, re_italic): Use non-grouping parentheses. * src/tools/docmaker/tohtml.py (HtmlFormatter::make_html_word): Updated.
Werner Lemberg 3d167cbe 2014-11-27T05:19:41 * src/base/ftobjs.c (FT_Get_Glyph_Name): Fix compiler warning. Introdruced in previous change. Reported by Alexei.
Werner Lemberg f34f1925 2014-11-26T21:59:21 * src/*: Add checks for parameters of API functions where missing. `API functions' are functions tagged with `FT_EXPORT_DEF'. Besides trivial fixes, the following changes are included, too. * src/base/ftbdf.c (FT_Get_BDF_Charset_ID, FT_Get_BDF_Property): Set error code if no service is available. * src/base/ftinit.c (FT_Done_FreeType): Change return value for invalid `library' parameter to `Invalid_Library_Handle'. * src/base/ftobjs.c (FT_New_Size): Change return value for invalid `asize' parameter to `Invalid_Argument'. * src/base/ftoutln.c (FT_Outline_Copy): Change return value for invalid `source' and `target' parameters to `Invalid_Outline'. (FT_Outline_Done_Internal): Change return value for invalid `outline' parameter to `Invalid_Outline'.
Werner Lemberg a593a042 2014-11-26T18:42:48 * src/cache/ftcbasic.c: Use single calls to `FT_TRACE'.
suzuki toshiya cd4a5a26 2014-11-27T00:20:48 * src/base/ftobj.c (Mac_Read_POST_Resource): Additional overflow check in the summation of POST fragment lengths, suggested by Mateusz Jurczyk <mjurczyk@google.com>.
suzuki toshiya 1720e81e 2014-11-26T16:39:00 * src/base/ftobjs.c (Mac_Read_POST_Resource): Insert comments and fold too long tracing messages.
suzuki toshiya 18a8f0d9 2014-11-26T16:11:38 Fix Savannah bug #43540. * src/base/ftmac.c (parse_fond): Prevent a buffer overrun caused by a font including too many (> 63) strings to store names[] table.
suzuki toshiya 45331679 2014-11-26T16:02:17 * src/base/ftobjs.c (Mac_Read_POST_Resource): Use unsigned long variables to read the lengths in POST fragments. Suggested by Mateusz Jurczyk <mjurczyk@google.com>.
suzuki toshiya 35252ae9 2014-11-26T15:52:23 Fix Savannah bug #43539. * src/base/ftobjs.c (Mac_Read_POST_Resource): Fix integer overflow by a broken POST table in resource-fork.
suzuki toshiya 240c94a1 2014-11-26T15:43:29 Fix Savannah bug #43538. * src/base/ftobjs.c (Mac_Read_POST_Resource): Fix integer overflow by a broken POST table in resource-fork.
suzuki toshiya 5aff8530 2014-11-26T14:36:12 * src/base/ftobjs.c (Mac_Read_POST_Resource): Avoid memory leak by a broken POST table in resource-fork. Return after freeing the buffered POST table when it is found to be broken.
Werner Lemberg 02b8e7e8 2014-11-25T11:31:51 */*: s/Invalid_Argument/Invalid_Size_Handle/ where appropriate.
Werner Lemberg 0d4aa23e 2014-11-25T11:26:14 */*: s/Invalid_Argument/Invalid_Stream_Handle/ where appropriate.
Werner Lemberg f4f9e688 2014-11-25T11:11:55 */*: s/Invalid_Argument/Invalid_Library_Handle/ where appropriate.
Werner Lemberg 04c2aa18 2014-11-25T10:22:12 */*: s/Invalid_Argument/Invalid_Outline/ where appropriate.
Werner Lemberg 04edbbda 2014-11-25T10:21:13 */*: s/Invalid_Argument/Invalid_Face_Handle/ where appropriate.
Werner Lemberg 3e86711e 2014-11-25T09:01:07 [Savannah bug #43682] Adjust some renderer callbacks. * src/raster/ftraster.c (ft_black_set_mode): Change return type to `int' to stay in sync with `FT_Renderer_SetModeFunc' prototype. * src/smooth/ftgrays.c (gray_raster_set_mode): New dummy function for orthogonality. (ft_grays_raster): Use it.
Werner Lemberg 6689a009 2014-11-25T08:53:09 [Savannah bug #43682] Properly handle missing return errors. The functions in this patch *do* return non-trivial errors that must be taken care of. * src/autofit/afloader.c (af_loader_load_g), src/base/ftobjs.c (FT_Render_Glyph_Internal), src/base/ftoutln.c (FT_Outline_Render), src/cff/cffgload.c (cff_decoder_parse_charstrings) <cff_op_endchar>, src/psaux/psobjs.c (ps_parser_load_field_table), src/psaux/t1decode (t1_decoder_parse_charstrings) <op_endchar>, src/truetype/ttgload.c (load_truetype_glyph <subglyph loop>, tt_loader_init, TT_Load_Glyph), src/truetype/ttgxvar.c (TT_Set_MM_Blend), src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): Do it.
Werner Lemberg b24e8ba2 2014-11-25T08:30:49 [Savannah bug #43682] Add/remove `void' casts to some functions. We use a cast to indicate that we intentionally ignore a function's return value. However, this doesn't apply to API functions where errors can only happen for trivially invalid input. * src/base/ftstroke.c (FT_Glyph_Stroke, FT_Glyph_StrokeBorder), src/base/ftsynth.c (FT_GlyphSlot_Embolden), src/cff/cffgload.c (cff_slot_load), src/pfr/pfrdrivr.c (pfr_get_kerning), src/type1/t1load.c (parse_encoding), src/type42/t42parse.c (t42_parse_encoding): Do it.
Werner Lemberg ef439fd2 2014-11-25T08:14:15 [Savannah bug #43682] Change some signatures to `void' return type. * include/internal/pshints.h (PSH_Globals_SetScaleFunc), include/internal/sfnt.h (TT_Get_Metrics_Func), src/pshinter/pshglob.c (psh_globals_set_scale), src/pshinter/pshrec.c (ps_hints_init), src/sfnt/ttmtx.c (tt_face_get_metrics), src/truetype/ttinterp.c (TT_Goto_CodeRange, TT_Set_CodeRange, TT_Clear_CodeRange, TT_Done_Context, TT_Save_Context): Do it. * src/pshinter/pshglob.h, src/pshinter/pshrec.h, src/sfnt/ttmtx.h, src/truetype/ttgload.c (TT_Hint_Glyph), src/truetype/ttinterp.c (TT_Run_Context), src/truetype/ttinterp.h, src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): Updated.
Werner Lemberg 6889f7b7 2014-11-24T17:16:08 Remove all code related to FT_MAX_CHARMAP_CACHEABLE. This is no longer used. * src/base/ftobjs.c, src/cache/ftccmap.c, src/cff/cffobjs.c, src/sfnt/ttcmap.c: Do it.
Werner Lemberg f0292bb9 2014-11-24T10:51:21 [sfnt] Fix Savannah bug #43680. This adds an additional constraint to make the fix from 2013-01-25 really work. * src/sfnt/ttsbit.c (tt_sbit_decoder_load_image) <index_format==4>: Check `p' before `num_glyphs'.
Werner Lemberg eca0f067 2014-11-24T10:22:08 [truetype] Fix Savannah bug #43679. * src/truetype/ttpload.c (tt_face_load_hdmx): Check minimum size of `record_size'.
Jarkko Pöyry 96341dc3 2014-11-24T09:53:07 [cff, pfr, psaux, winfonts] Fix Savannah bug #43676. Don't cast cmap init function pointers to an incompatible type. Without this patch, the number of parameters between declaration and the real signature differs. Calling such a function results in undefined behavior. ISO/IEC 9899:TC3 (Committee Draft September 7, 2007) 6.5.2.2 Function calls 9 If the function is defined with a type that is not compatible with the type (of the expression) pointed to by the expression that denotes the called function, the behavior is undefined. On certain platforms (c -> js with emscripten) this causes termination of execution or invalid calls because in the emscripten implementation, function pointers of different types are stored in different pointer arrays. Incorrect pointer type here results in indexing of an incorrect array. * src/cff/cffcmap.c (cff_cmap_encoding_init, cff_cmap_unicode_init), src/pfr/pfrcmap.c (pfr_cmap_init), src/psaux/t1cmap.c t1_cmap_standard_init, t1_cmap_expert_init, t1_cmap_custom_init, t1_cmap_unicode_init), src/winfonts/winfnt.c (fnt_cmap_init): Fix signature.
Werner Lemberg f70d9342 2014-11-24T09:31:32 [sfnt] Fix Savannah bug #43672. * src/sfnt/ttkern.c (tt_face_load_kern): Use correct value for minimum table length test.
Werner Lemberg 73be9f9a 2014-11-24T07:30:05 [type1, type42] Another fix for Savannah bug #43655. * src/type1/t1load.c (parse_charstrings), src/type42/t42parse.c (t42_parse_charstrings): Add another boundary testing.
Werner Lemberg a7a4207d 2014-11-24T06:44:45 [docmaker] Formatting, copyright, improved documentation. * src/tools/docmaker/*: No code changes besides trivial modifications.
Werner Lemberg af834617 2014-11-22T13:29:10 [bdf] Fix Savannah bug #43660. * src/bdf/bdflib.c (_bdf_parse_glyphs) <"ENDFONT">: Check `_BDF_GLYPH_BITS'.
Werner Lemberg 42fcd669 2014-11-22T12:44:33 [type42] Allow only embedded TrueType fonts. This is a follow-up to Savannah bug #43659. * src/type42/t42objs.c (T42_Face_Init): Exclusively use the `truetype' font driver for loading the font contained in the `sfnts' array.
Werner Lemberg 3788187e 2014-11-22T10:46:47 [type42] Fix Savannah bug #43659. * src/type42/t42objs.c (T42_Open_Face): Initialize `face->ttf_size'. * src/type42/t42parse.c (t42_parse_sfnts): Always set `face->ttf_size' directly. This ensures a correct stream size in the call to `FT_Open_Face', which follows after parsing, even for buggy input data. Fix error messages.
Werner Lemberg 5f201ab5 2014-11-22T09:16:39 [cff] Fix Savannah bug #43658. * src/cff/cf2ft.c (cf2_builder_lineTo, cf2_builder_cubeTo): Handle return values of point allocation routines.
Werner Lemberg 9bd20b73 2014-11-22T06:24:45 [sfnt] Fix Savannah bug #43656. * src/sfnt/ttcmap.c (tt_cmap4_validate): Fix order of validity tests.
Werner Lemberg dd89710f 2014-11-21T22:19:28 [type1, type42] Fix Savannah bug #43655. * src/type1/t1load.c (parse_charstrings), src/type42/t42parse.c (t42_parse_charstrings): Fix boundary testing.
Werner Lemberg b1fc00d5 2014-11-21T12:06:40 * src/pcf/pcfread.c (pcf_get_metrics): Sanitize invalid metrics.
Werner Lemberg 9154dab8 2014-11-21T08:03:51 [ftlcdfil] Obey flow direction. * src/base/ftlcdfil.c (_ft_lcd_filter_fir, _ft_lcd_filter_legacy): Handle `up' flow.
Werner Lemberg 644d6fab 2014-11-21T07:28:50 * src/base/ftbitmap.c (FT_Bitmap_Convert): Improve. This commit completes argument checks and adds support for different flow directions.
Werner Lemberg 6de76174 2014-11-21T06:05:49 * src/base/ftbitmap.c (FT_Bitmap_Copy): Improve. This commit adds argument checks and support for different flow directions.
Werner Lemberg 1e6e1b83 2014-11-20T21:07:56 * src/base/ftbitmap.c (FT_Bitmap_New): Check argument.
Werner Lemberg b3500af7 2014-11-19T21:28:21 Change some fields in `FT_Bitmap' to unsigned type. This doesn't break ABI. * include/ftimage.h (FT_Bitmap): Make `rows', `width', `num_grays', `pixel_mode', and `palette_mode' unsigned types. * src/base/ftbitmap.c: Updated. (FT_Bitmap_Copy): Fix casts. * src/cache/ftcsbits.c, src/raster/ftraster.c, src/sfnt/pngshim.c: Updated.
Werner Lemberg df485774 2014-11-19T21:21:23 Make `FT_Bitmap_Convert' correctly handle negative `pitch' values. * src/base/ftbitmap.c (FT_Bitmap_Convert): Always use positive value for the pitch while copying data. Correctly set pitch sign in target bitmap.
Werner Lemberg d6061212 2014-11-19T21:13:23 Minor code improvement in `FT_Bitmap_Embolden'. * src/base/ftbitmap.c (FT_Bitmap_Embolden) <FT_PIXEL_MODE_GRAY[24]>: Fix thinko.
Alexei Podtelezhnikov f841ad3e 2014-11-19T21:19:06 * src/base/fttrigon.c: Use dedicated `FT_Angle' for arctan table.
Werner Lemberg a67c43e1 2014-11-19T06:46:23 Avoid compiler warnings on x86-64 for `FT_MulFix'. `FT_MulFix' takes `FT_Long' parameters as defined in `freetype.h', but several inline implementations of it in `ftcalc.h' take `FT_Int32' arguments. This is causing compiler warnings on x86-64: If parameters of type `FT_Fixed' (= `FT_Long') are passed to the inline implementation of this function, integer values are truncated from 64bit to 32bit. * include/internal/ftcalc.h (FT_MulFix) [FT_MULFIX_ASSEMBLER]: Add casts.
Werner Lemberg 54abd228 2014-11-15T09:05:22 [sfnt] Fix Savannah bug #43597. * src/sfnt/pngshim.c (Load_SBit_Png): Protect against too large bitmaps.
Werner Lemberg 257c270b 2014-11-12T21:42:13 [sfnt] Fix Savannah bug #43591. * src/sfnt/ttsbit.c (tt_sbit_decoder_init): Protect against addition and multiplication overflow.
Werner Lemberg 677ddf4f 2014-11-12T21:26:44 [sfnt] Fix Savannah bug #43590. * src/sfnt/ttload.c (check_table_dir, tt_face_load_font_dir): Protect against addition overflow.
Werner Lemberg f46add13 2014-11-12T21:06:08 [sfnt] Fix Savannah bug #43589. * src/sfnt/sfobjs.c (woff_open_font): Protect against addition overflow.
Werner Lemberg 602040b1 2014-11-12T20:51:20 [sfnt] Fix Savannah bug #43588. * src/sfnt/ttcmap.c (tt_cmap8_validate, tt_cmap10_validate, tt_cmap12_validate, tt_cmap13_validate, tt_cmap14_validate): Protect against overflow in additions and multiplications.
Alexei Podtelezhnikov 2e73a1b4 2014-11-09T23:22:43 [base] CORDIC improvements. The scaling between the hypotenuse and its CORDIC approximation is based on regression analysis. The smaller padding for `theta' is justifed by its maximum error of less than 6. * src/base/fttrigon.c (ft_trig_downscale): Borrow code from ./ftcalc.c (ft_multo64), change linear intercept. (ft_trig_pseudo_polarize): Decrease `theta' padding.
Werner Lemberg 0e73d218 2014-11-09T01:27:38 * src/base/ftstroke.c (ft_stroker_inside): Fix border intersections. One more place to check whether `radius' is zero. Problem reported by Marco Wertz <marco.wertz@gmx.de>.
Werner Lemberg 2c4832d3 2014-11-07T07:42:33 Fix Savannah bug #43535. * src/bdf/bdflib.c (_bdf_strncmp): New macro that checks one character more than `strncmp'. s/ft_strncmp/_bdf_strncmp/ everywhere.
Werner Lemberg ef1eba75 2014-11-06T23:25:05 Fix Savannah bug #43548. * src/pcf/pcfread (pcf_get_encodings): Add sanity checks for row and column values.
Werner Lemberg 0e2f5d51 2014-11-06T22:32:46 Fix Savannah bug #43547. * src/pcf/pcfread.c (pcf_read_TOC): Check `size' and `offset' values.
Werner Lemberg f49a100a 2014-11-06T13:30:28 * src/pcf/pcfread.c (pcf_read_TOC): Avoid memory leak.
Infinality facfc79a 2014-11-03T07:24:59 * src/truetype/ttsubpix.c (COMPATIBILITY_MODE_Rules): Updated. The previous commit deteriorates rendering of DejaVu and similar fonts; this gets compensated with this rule.
Werner Lemberg 706f752b 2014-11-03T07:20:57 * src/truetype/ttinterp.c (Ins_DELTAP): Fix subpixel hinting. Before this patch, it was impossible to ever call DELTAP[123] in subpixel hinting mode as described in the ClearType whitepaper; it only worked if in `compatibility mode'. However, compatibility mode essentially disables SHPIX, completely ruining hinting of ttfautohint output, for example. We now follow the whitepaper more closely so that DELTAP[123] instructions for touched points in the non-subpixel direction are executed.
Alexei Podtelezhnikov 525d4876 2014-10-31T22:12:37 [smooth] Improve code readability. * src/smooth/ftsmooth.c (ft_smooth_render_generic): Rearrange code.
Alexei Podtelezhnikov e1efe0a2 2014-10-31T00:07:14 [smooth] Reduce outline translations during rendering. * src/smooth/ftsmooth.c (ft_smooth_render_generic): Translate origin virtually by modifying cbox, actually translate outline if cumulative shift is not zero.
Alexei Podtelezhnikov c7fd9356 2014-10-30T22:43:01 [smooth] Fix Savannah bug #35604 (cont'd). * src/smooth/ftsmooth.c (ft_smooth_render_generic): Remove checks and casts that became unnecessary after the variable type upgrades.
Alexei Podtelezhnikov 465ab995 2014-10-29T23:45:23 [smooth] Improve code readability. * src/smooth/ftsmooth.c (ft_smooth_render_generic): Rearrange code.
Alexei Podtelezhnikov 74916997 2014-10-29T22:24:24 Unify hypotenuse approximations. * include/internal/ftcalc.h (FT_HYPOT): Move macro from here... * include/internal/ftobjs.h: ... to here, next to required `FT_ABS'. * src/smooth/ftgrays.c (gray_render_cubic): Use it here.
Werner Lemberg fe15152c 2014-10-25T05:56:59 [cff] Test valid darkening parameter macros in `ftoption.h'. We no longer need an otherwise unused typedef that can cause a gcc warning. Problem reported by Alexei. * src/cff/cffobjs.c (cff_driver_init): Use `CFF_CONFIG_OPTION_DARKENING_PARAMETER_XXX' macros directly. (SET_DARKENING_PARAMETERS): Removed. Compile time tests are now ... * devel/ftoption.h, include/config/ftoption.h: ... here.
Alexei Podtelezhnikov aba0f498 2014-10-24T23: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.
David Weiß dd8de1a0 2014-10-23T20:01:48 [build] Improve property file for vc2010. User-defined properties should be empty by default to prevent linker failures. * builds/windows/vc2010/freetype.user.props, builds/windows/vc2010/freetype.vcxproj: s/OptionsDirectory/UserOptionDirectory/. Comment out all user options.
Werner Lemberg dd570e99 2014-10-23T19:57:37 [cff] Work around bug in preprocessor of MSVC 2010. We have been hit by https://connect.microsoft.com/VisualStudio/feedback/details/718976/msvc-pr * devel/ftoption.h, include/config/ftoption.h: Replace `CFF_CONFIG_OPTION_DARKENING_PARAMETERS' with eight macros `CFF_CONFIG_OPTION_DARKENING_PARAMETER_{X,Y}{1,2,3,4}'. * src/cff/cffobjs.c (SET_DARKENING_PARAMETERS): Removed. We no longer need double expansion. (SET_DARKENING_PARAMETERS_0): Renamed to ... (SET_DARKENING_PARAMETERS): ... this. Update call.
Werner Lemberg cc7bb80b 2014-10-20T08:35:50 [sbit] Minor fixes. * src/sfnt/ttsbit.c (tt_face_load_sbit) [TT_SBIT_TABLE_TYPE_SBIX]: Accept overlay format also, but emit warning message in that case. (tt_sbit_decoder_load_metrics): Add missing newline to error message. (tt_sbit_load_sbix_image): Add `rgbl' graphic type (as used on iOS 7.1) to the list of unsupported formats.
Alexei Podtelezhnikov 118e651b 2014-10-19T23:31:08 [truetype] Clean up bytecode rounding. Zero distance does not have to be treated specially if you follow specifications and check the sign as the very last step of rounding. * src/truetype/ttinterp.c (Round_None, Round_To_Grid, Round_Down_To_Grid, Round_Up_To_Grid, Round_To_Double_Grid): Use macros when available, do not check for non-zero distance. (Round_To_Half_Grid, Round_Super, Round_Super_45): Ditto, return phase if sign changed.
David Weiß fede19ec 2014-10-18T14:59:20 [build] Add property file to vc2010 project. This simplifies custom build configurations, especially for automated build environments. * builds/windows/vc2010/freetype.user.props: New configuration file. * builds/windows/vc2010/freetype.vcxproj: Include `freetype.user.props' and use its data fields. * builds/windows/vc2010/index.html: Updated.