Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 3f01161f | 2023-02-21 16:17:07 | [raster] Clean up contour indexing. * src/raster/ftraster.c (Decompose_Curve, Convert_Glyph): Use consistent index types (Int) and compact iterations. | ||
| be724c81 | 2023-02-07 22:24:53 | For debugging, avoid implicit conversion from integer to double. Otherwise we get zillions of clang 15 warnings. * src/autofit/afcjk.c, src/autofit/afhints.c, src/autofit/aflatin.c, src/base/ftobjs.c, src/base/ftoutln.c, src/cff/cffparse.c, src/raster/ftraster.c, src/sfnt/pngshim.c, src/truetype/ttgload.c, src/truetype/ttgxvar.c, src/truetype/ttobjs.c, src/type1/t1gload.c: Use `double` cast in debugging and tracing macros. | ||
| 65f85237 | 2023-01-17 09:18:25 | Update all copyright notices. | ||
| 695d606a | 2022-04-01 08:50:33 | Whitespace. | ||
| d0cfb4e1 | 2022-01-11 10:54:10 | Update all copyright notices. | ||
| 238245cd | 2021-11-16 22:07:28 | Fix clang++ warnings. * src/*: Initialize some variables to NULL. | ||
| 7f8f0c1c | 2021-09-02 23:30:31 | [smooth, raster, sdf] Clean up initialization calls. * src/raster/ftraster.c (ft_black_init): Removed. (ft_black_new): Clean up. * src/sdf/ftbsdf.c (bsdf_raster_new): Ditto. * src/sdf/ftsdf.c (sdf_raster_new): Ditto. * src/smooth/ftgrays.c (gray_raster_new): Ditto. | ||
| c2fa51d9 | 2021-07-24 20:32:16 | Fix some `cppcheck` warnings. * src/bzip2/ftbzip2.c (ft_bzip2_file_skip_output), src/gzip/ftgzip.c (ft_gzip_file_skip_output): Reduce scope of `delta`. * src/psaux/psintrp.c, src/psaux/psintrp.h (cf2_interpT2CharString): Add `const` to `buf` parameter. * src/raster/ftraster.c (DelOld): Add `const` to `profile` parameter. (Vertical_Sweep_Span): Reduce scope of `target`. (FT_Outline_Get_CBox): Reduce scope of `xMin`, `xMax`, `yMin`, `yMax`. * src/smooth/ftgrays.c (gray_render_conic): Reduce scope of `split`. (gray_sweep, gray_sweep_direct): Reduce scope of `area`. * src/tools/apinames.c (names_dump) <OUTPUT_WATCOM_LBC>: Reduce scope of `temp`. | ||
| f27b4834 | 2021-06-30 10:54:59 | * src/raster/ftraster.c (Render_Single_Pass): Simplify `band_stack'. | ||
| 69c3516c | 2021-06-29 23:51:23 | [raster] Do not skip the second pass without dropout control. The second pass also fixes horizontal lines through the pixel centers. * src/raster/ftraster.c (black_TWorker): Do not use `second_pass'. (Render_Glyph): Skip the second pass only with the appropriate flag. | ||
| 3696ac5a | 2021-06-29 23:27:10 | [raster] Handle sub-band stack locally. * src/raster/ftraster.c (black_TWorker): Move `band_stack' from here.. (Render_Single_Pass): ... to here and accept limit arguments. (Render_Glyph): Updated. | ||
| c852388d | 2021-06-28 23:26:10 | [raster] Handle Bézier stack locally. * src/raster/ftraster.c (black_TWorker): Move `arcs' from here... (Conic_To, Cubic_To): ... to here to tighten their scope. (Bezier_Up, Bezier_Down): ... Take the current `arc' argument. | ||
| 3a278381 | 2021-06-28 10:22:03 | [raster] Clean up vertical sweep. * src/raster/ftraster.c (black_TWorker): Replace the current line offset with the pointer and drop the increment. (Function_Sweep_Init): Take values as arguments instead of pointers. (Vertical_Sweep_*, Horizontal_Sweep_Init, Draw_Sweep): Updated. | ||
| fb4511eb | 2021-06-26 08:49:20 | [raster] Make `band_top' local variable. * src/raster/ftraster.c (black_TWorker): Move `band_top' from here... (Render_Single_Pass): ... to here, and refactor. (Render_Glyph): Updated. | ||
| f6370e2f | 2021-06-25 22:59:39 | [raster] Adjust sub-band bisecting limits. We can bisect a band until it is just a single scan line. This might be slow and cause time-outs but if we need to impose limits it should be elsewhere. * src/raster/ftraster.c (Render_Single_Pass): Tweak sub-banding. | ||
| bc1029b9 | 2021-06-25 18:20:57 | * src/raster/ftraster.c (Render_Single_Pass): Remove dead code. | ||
| 1e0cef9e | 2021-06-24 00:19:50 | [smooth, raster] Fix up and align error codes. FT_Render_Glyph picked up FAILURE or 1 returned from the raster function, which became a confusing error code. Instead, return Raster_Overflow in the unlikely event that banding does not help or another meaningful error. * src/smooth/ftgrays.c (gray_convert_glyph_inner, gray_convert_glyph): Use Raster_Overflow when the rendering pool is exhausted and return it if banding does not help. (gray_raster_render): Use Smooth_Err_Ok. * src/raster/ftraster.c (Render_Single_Pass): Return Raster_Overflow if banding does not help or another error code. | ||
| d8ac180c | 2021-06-23 23:32:02 | [smooth, raster] Remove synonymous error macros. * src/smooth/ftgays.c [STANDALONE_]: s/ErrRaster_/Smooth_Err_/. (gray_convert_glyph_inner): Updated accordingly. * src/raster/ftraster.c [STANDALONE_]: Do not abbreviate error macros. (New_Profile, End_Profile, Insert_Y_Turn, Line_Up, Bezier_Up, Decompose_Curve, Draw_Sweep, Render_Single_Pass, ft_black_render): Updated accordingly. | ||
| b6e8a712 | 2021-01-17 07:18:48 | Update all copyright notices. | ||
| c9f588be | 2020-10-10 12:48:18 | Document changes to last release. | ||
| 20186d1b | 2020-09-11 23:47:54 | [raster] Improve the second pass (#58373). Besides dropout control the second horizontal sweep is supposed to clean up straight horizontal edges that are mishandled by the first vertical sweep when a line passes through pixel centers. This line would present as perfectly aligned span edges in the second sweep. * src/raster/ftraster.c (Horizontal_Sweep_Span): Replace the old implementation with a better one focusing on aligned span edges only. | ||
| c3721642 | 2020-09-11 23:13:02 | [raster] Tune SMART macro (#58352). Windows seems to perform smart dropout control at 26.6 precision. To mimick Windows independent of increased precision, we need to tweak the macro so that some close calls break down rather than up. * src/raster/ftraster.c (SMART): Tweak the macro. | ||
| cb473313 | 2020-09-08 22:41:53 | [raster] Introduce SMART macro. * src/raster/ftraster.c (SMART): New macro for smart dropout rounding. (Verstical_Sweep_Drop, Horizontal_Sweep_Drop): Use it. | ||
| 3594eaee | 2020-09-08 22:20:11 | [raster] Improve tracing. | ||
| 53be1753 | 2020-07-28 07:33:40 | Fix `-Wformat' compiler warnings. * src/*: Fix format specifiers. * builds/unix/ftsystem.c (FT_Stream_Open): Ditto. | ||
| 16586859 | 2020-06-13 21:15:45 | Remove redundant inclusion of `ft2build.h'. * */*: Remove `#include <ft2build.h>' where possible. * include/freetype/freetype.h: Remove cpp error about missing inclusion of `ft2build.h'. | ||
| e1339133 | 2020-06-08 13:31:55 | Make macros for header file names optional. We no longer have to take care of the 8.3 file name limit; this allows us (a) to introduce longer, meaningful file names, and (b) to avoid macro names in `#include' lines altogether since some compilers (most notably Visual C++) doesn't support this properly. */*: Replace #include FOO_H with #include <freetype/foo.h> or something similar. Also update the documentation. | ||
| e5038be7 | 2020-01-19 17:05:19 | Update all copyright notices. | ||
| 0c6f61ab | 2019-05-07 19:07:11 | * src/raster/ftraster.c (Draw_Sweep): Unbreak. | ||
| ea7e20fb | 2019-05-07 07:00:38 | * src/raster/ftraster.c: Clean-ups. | ||
| 7b841047 | 2019-05-04 08:13:22 | Various clang 8.0 static analyzer fixes. Reported by Sender Ghost <lightside@gmx.com>. * src/autofit/afcjk.c (af_cjk_hints_compute_edges): Catch a corner case where `edge->first' could be NULL. * src/pfr/pfrobjs.c (pfr_slot_load): Remove unnecessary test of `size'. * src/raster/ftraster.c (Draw_Sweep): Catch a corner case where `draw_right' might be NULL. * src/sfnt/ttmtx.c (tt_face_get_metrics): Fix limit test for `aadvance'. Ensure `abearing' always hold a meaningful result. * src/truetype/ttgload.c (load_truetype_glyph): Ensure `subglyph' is not NULL before accessing it. * src/truetype/ttgxvar.c (TT_Set_Named_Instance): Remove unnecessary test of `namedstyle'. * src/type42/t42parse.c (t42_parser_done): Ensure `parser->root.funcs.done' is not NULL before accessing it. | ||
| 7a81b63a | 2019-04-25 22:06:33 | Optimize Bézier bisections. * src/raster/ftraster.c (Split_Conic, Split_Cubic): Use shifts and refactor. * src/smooth/ftgrays.c (gray_split_conic, gray_split_cubic): Ditto. * src/base/ftstroke.c (ft_conic_split, ft_cubic_split): Ditto. * src/base/ftbbox.c (cubic_peak): Use shifts. | ||
| 75859970 | 2019-02-23 10:07:09 | Update all copyright notices. | ||
| f686ad46 | 2019-01-22 20:31:44 | Update copyright years. | ||
| c168cc3b | 2018-09-21 11:09:27 | [raster] Fix disappearing vertical lines (#54589). * src/raster/ftraster.c (Vertical_Sweep_Span): Handle special case where both left and right outline exactly pass pixel centers. | ||
| 8e950680 | 2018-09-20 06:26:34 | [base] Remove unused function `FT_GlyphLoader_CopyPoints'. * include/freetype/internal/ftgloadr.h, src/base/ftgloadr.c (FT_GlyphLoader_CopyPoints): Do it. | ||
| a0dd16fb | 2018-08-15 18:13:17 | Don't use `trace_' prefix for FT_COMPONENT arguments. * include/freetype/internal/ftdebug.h (FT_TRACE_COMP, FT_TRACE_COMP_): New auxiliary macros to add `trace_' prefix. (FT_TRACE): Use `FT_TRACE_COMP'. */* (FT_COMPONENT): Updated. | ||
| e16bfbec | 2018-08-09 22:18:00 | [raster, smooth] Reinstate bitmap size limits. This again moves outline and bitmap size checks one level up. * src/base/ftoutln.c (FT_Outline_Render): Explicitly reject enormous outlines. * src/raster/ftrend1.c (ft_raster1_render): Reject enormous bitmaps and, therefore, outlines that require them. * src/smooth/ftsmooth.c (ft_smooth_render_generic): Ditto. * src/raster/ftraster.c (ft_black_render): Remove outline size checks. * src/smooth/ftgrays.c (gray_raster_render): Ditto. [STANDALONE]: Remove `FT_Outline_Get_CBox' copy. | ||
| eaa5a42a | 2018-06-11 21:56:23 | [raster] Clean up. * src/raster/ftraster.c (black_TWorker, SCALED, Set_High_Precision): Clean up after 5-level gray removal (8dc8635874). (Vertical_Sweep_Span): Be brief. | ||
| 50fda0be | 2018-06-09 22:52:43 | [raster] Deal with pitch sign earlier. * src/raster/ftraster.c (black_TWorker): Remove unused `traceG', s/bTarget/bOrigin/. (Render_Glyph): Set `ras.bOrigin' at the bottom-left corner. (Vertical_Sweep_Init, {Vertical,Horizontal}_Sweep_{Span,Drop}): Updated accordingly. | ||
| ca4e707a | 2018-06-06 08:18:23 | [smooth, raster] Limit bitmap size (#54019). * src/raster/ftraster.c [STANDALONE] (FT_Outline_Get_CBox): Add function. [!STANDALONE]: Include FT_OUTLINE_H. (ft_black_render): Compute CBox and reject glyphs larger than 0xFFFF x 0xFFFF. * src/smooth/ftgrays.c (gray_raster_render): Reject glyphs larger than 0xFFFF x 0xFFFF. | ||
| 9ac9060d | 2018-06-03 09:01:17 | [GSoC] src/*.*: Convert block comments to `light' style. This monster commit was created by applying Nikhil's scripts `docconverter.py' and `markify.py' to all C header and source files, followed up by minor manual clean-up. No change in functionality, of course. I used commit f7419907bc6044b9b7057f9789866426c804ba82 from https://github.com/nikramakrishnan/freetype-docs.git. | ||
| 125b8480 | 2018-05-31 10:49:05 | * src/raster/ftraster.c (black_TWorker_): Remove `gTarget' field. This is no longer used. | ||
| 95149592 | 2018-05-02 20:27:48 | Remove FT_CONFIG_OPTION_PIC and related code. */* [FT_CONFIG_OPTION_PIC]: Remove all code guarded by this preprocessor symbol. */*: Replace `XXX_GET' macros (which could be either a function in PIC mode or an array in non-PIC mode) with `xxx' arrays. * include/freetype/internal/ftpic.h, src/autofit/afpic.c, src/autofit/afpic.h, src/base/basepic.c, src/base/basepic.h, src/base/ftpic.c, src/cff/cffpic.c, src/cff/cffpic.h, src/pshinter/pshpic.c, src/pshinter/pshpic.h, src/psnames/pspic.c, src/psnames/pspic.h, src/raster/rastpic.c, src/raster/rastpic.h, src/sfnt/sfntpic.c, src/sfnt/sfntpic.h, src/smooth/ftspic.c, src/smooth/ftspic.h, src/truetype/ttpic.c, src/truetype/ttpic.h: Removed. | ||
| 0a0c2256 | 2018-01-02 09:33:57 | Update copyright year. | ||
| 563ae780 | 2017-01-04 20:16:34 | Update copyright year. | ||
| 37c72f66 | 2016-12-25 22:55:25 | Minor formatting. | ||
| 45cad2e5 | 2016-09-28 19:10:52 | More FT_ZERO usage. * src/gxvalid/gxvcommn.c (gxv_ClassTable_validate): s/ft_memset/FT_MEM_ZERO/. * src/psaux/t1decode.c (t1_decoder_parse_charstrings): s/ft_memset/FT_ARRAY_ZERO/. * src/raster/ftraster.c (FT_ZERO): Define. (ft_black_new): Use it. * src/raster/ftrend1.c (ft_raster1_get_cbox): s/FT_MEM_ZERO/FT_ZERO/. * src/smooth/ftgrays.c (FT_ZERO): Define. (gray_raster_new): Use it. * src/smooth/ftsmooth.c (ft_smooth_get_cbox): s/FT_MEM_ZERO/FT_ZERO/. | ||
| c95b7652 | 2016-09-17 17:12:50 | s/0/NULL/ for function pointers; comments, formatting. | ||
| 3e1f7bc5 | 2016-06-18 22:13:23 | Fresh typos. | ||
| 72a06531 | 2016-06-17 23:10:22 | [raster, smooth] Handle FT_RENDER_POOL_SIZE better. * src/raster/ftraster.c (FT_MAX_BLACK_POOL): New macro. (ft_black_render): Updated. * src/smooth/ftgrays.c (FT_MAX_GRAY_POOL): New macro. (gray_raster_render): Updated. | ||
| 31f2dc19 | 2016-03-23 07:31:59 | [raster, smooth] Directly test outline size (#47500). This improves stand-alone compilation. * src/base/ftoutln.c (FT_Outline_Render): Move cbox size test to... * src/raster/ftraster.c (ft_black_render), src/smooth/ftgrays.c (gray_raster_render): ...these functions. | ||
| e9181aba | 2016-03-23 06:58:20 | [raster, smooth] Fix some clang sanitizer runtime issues. * src/raster/ftraster.c (ft_black_reset, ft_black_set_mode, ft_black_render): Harmonize signatures with `ftimage.h'. * src/smooth/ftgrays.c (gray_raster_render, gray_raster_reset): Ditto. | ||
| 9adeab64 | 2016-01-13 11:54:10 | Update copyright year. | ||
| 9d0b76d7 | 2016-01-12 22:27:29 | Don't use macro names that start with `_[A-Z]' [2/3]. Such macro names are reserved for both C and C++. * include/freetype/ftimage.h, src/raster/ftraster.c, src/smooth/ftgrays.c, src/smooth/ftgrays.h: s/_STANDALONE_/STANDALONE_/. | ||
| 52aad9df | 2015-09-29 12:38:11 | [raster] Minor style fix. | ||
| 5a6dc872 | 2015-09-04 23:14:46 | [raster,smooth] Microoptimizations. * src/raster/ftraster.c (Insert_Y_Turn, Finalize_Profile_Table, Beziier_Up, ): Use do-while loops. * src/smooth/ftgrays.c (gray_render_scanline, gray_render_line, gray_convert_glyph): Ditto. | ||
| 6343ba22 | 2015-08-01 07:53:48 | Fix some bugs found by clang's `-fsanitize=undefined' (#45661). * src/base/ftrfork.c (FT_Raccess_Get_HeaderInfo): Only accept positive values from header. Check overflow. * src/base/ftoutln.c (SCALED): Correctly handle left-shift of negative values. * src/bdf/bdf.h (_bdf_glyph_modified, _bdf_set_glyph_modified, _bdf_clear_glyph_modified): Use unsigned long constant. * src/bdf/bdfdrivr.c (BDF_Size_Select, BDF_Glyph_Load): Don't left-shift values that can be negative. * src/pcf/pcfdrivr.c (PCF_Size_Select, PCF_Glyph_Load): Don't left-shift values that can be negative. * src/raster/ftraster.c (SCALED): Correctly handle left-shift of negative values. * src/sfnt/ttsbit.c (tt_face_load_strike_metrics): Don't left-shift values that can be negative. * src/truetype/ttgload.c (TT_Load_Composite_Glyph, compute_glyph_metrics, load_sbit_image): Don't left-shift values that can be negative. | ||
| 392cf22f | 2015-06-25 13:04:57 | Another adjustment to header locations. This change is a result of a discussion thread on freetype-devel http://lists.nongnu.org/archive/html/freetype-devel/2015-06/msg00041.html Re-introduce the `freetype2' subdirectory for all FreeType header files after installation, and rename the `freetype2' subdirectory in the git repository to `freetype'. * include/freetype2: Renamed to... * include/freetype: This. * CMakeLists.txt (PUBLIC_HEADERS, PUBLIC_CONFIG_HEADERS, PRIVATE_HEADERS): Updated. Update creation of `ftconfig.h'. Install generated `ftconfig.h'. * Jamfile (HDRMACRO, RefDoc), autogen.sh: Updated. * builds/amiga/include/config/ftconfig.h, builds/freetype.mk (PUBLIC_DIR), builds/symbian/bld.inf, builds/toplevel.mk (work), builds/unix/freetype2.in: Updated. * builds/unix/freetype-config.in: Updated. * builds/unix/configure.raw: Don't check for `rmdir'. * builds/unix/unix-def.in (DELDIR): Use `rm -rf', which is portable according to the autoconf info manual. * builds/unix/install.mk (install, uninstall, distclean_project_unix): Update and simplify. * builds/wince/*, builds/windows/*: Updated. * devel/ft2build.h, include/ft2build.h: Updated. * include/freetype2/config/ftheader.h, include/freetype2/internal/ftserv.h, include/freetype2/internal/internal.h: Update all header file macros. * src/tools/chktrcmp.py (TRACE_DEF_FILES): Updated. * docs/*: Updated. | ||
| 8502c98b | 2015-06-22 06:35:23 | Fix Savannah bug #45097. We no longer `pollute' the namespace of possible header file names; instead we move `ft2build.h' up by one level so that it gets installed in the default include directory (e.g., /usr/local/include). After this commit, only `ft2build.h' stays in the compiler's include path. No visible changes for the user who follows the standard FreeType header inclusion rules. * include/*: Move to ... * include/freetype2/*: This directory, except `ft2build.h'. * CMakeLists.txt (PUBLIC_HEADERS, PUBLIC_CONFIG_HEADERS, PRIVATE_HEADERS), Jamfile (HDRMACRO, RefDoc), autogen.sh: Updated. * builds/amiga/include/config/ftconfig.h, builds/freetype.mk (PUBLIC_DIR), builds/symbian/bld.inf, builds/toplevel.mk (work), builds/unix/install.mk (install, uninstall), builds/unix/freetype2.in: Updated. * builds/unix/freetype-config.in: Updated. Emit -I directory only if it is not `/usr/include'. * builds/wince/*, builds/windows/*: Updated. * devel/ft2build.h, include/ft2build.h: Updated. * include/freetype2/config/ftheader.h, include/freetype2/internal/ftserv.h, include/freetype2/internal/internal.h: Update all header file macros. * src/tools/chktrcmp.py (TRACE_DEF_FILES): Updated. * docs/*: Updated. | ||
| d1ade6d1 | 2015-06-02 11:44:52 | [raster] Add more tracing. * src/raster/ftraster.c (FT_TRACE7) [_STANDALONE_]: Define. (Vertical_Sweep_Span, Vertical_Sweep_Drop, Horizontal_Sweep_Span, Horizontal_Sweep_Drop, Render_Glyph): Add tracing calls. | ||
| 851e8151 | 2015-03-01 19:27:09 | Various compiler warning fixes for `make multi'. * src/autofit/afcjk.c (af_cjk_hints_compute_blue_edges), src/autofit/aflatin.c (af_latin_hint_compute_blue_edges, af_latin_hint_edges), src/autofit/aflatin2.c (af_latin2_hints_compute_blue_edges, af_latin2_hint_edges): Declare as `static'. * src/cache/ftccmap.c (FTC_CMAP_QUERY_HASH, FTC_CMAP_NODE_HASH): Removed. Unused. * src/cache/ftcimage.c: Include FT_INTERNAL_OBJECTS_H. * src/cache/ftcmanag.c (FTC_LRU_GET_MANAGER): Removed. Unused. * src/cff/cf2intrp.c: Include `cf2intrp.h'. * src/cff/cffdrivr.c (PAIR_TAG): Removed. Unused. * src/gzip/ftgzip.c (NO_DUMMY_DECL): Removed. Unused. * src/psaux/afmparse.c (afm_parser_read_int): Declare as `static'. * src/pshinter/pshalgo.c (STRONGER, PSH_ZONE_MIN, PSH_ZONE_MAX): Removed. Unused. * src/raster/ftraster.c (Render_Glyph): Declare as `static'. * src/sfnt/ttpost.c (load_format_20): Fix signedness warning. * src/truetype/ttdriver.c (PAIR_TAG): Removed. Unused. * src/truetype/ttsubpix.c (is_member_of_family_class, is_member_of_style_class): Declare as `static'. * src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String): Declare as `static'. * src/type1/t1load.c (mm_axis_unmap, mm_weights_unmap): Declare as `static'. (T1_FIELD_COUNT): Removed. Unused. * src/type1/t1parse.h (T1_Done_Table): Removed. Unused. * src/type42/t42parse.c (T1_Done_Table): Removed. Unused. | ||
| 4d1f7af1 | 2015-02-23 07:04:36 | [smooth, raster] Re-enable standalone compilation. * src/raster/ftraster.c (FT_RENDER_POOL_SIZE, FT_MAX) [_STANDALONE_]: Define macros. * src/smooth/ftgrays.c (FT_RENDER_POOL_SIZE, FT_MAX, FT_ABS, FT_HYPOT) [_STANDALONE_]: Define macros. | ||
| a974e9ac | 2015-02-22 21:02:13 | * src/raster/ftraster.c: Use the file's typedefs everywhere. | ||
| ca96fe01 | 2015-02-22 20:05:04 | [raster] Signedness fixes. * src/raster/ftraster.c, src/raster/ftrend1.c: Apply. | ||
| 264b5e46 | 2015-01-23 21:23:55 | [raster] Handle `FT_RASTER_FLAG_AA' correctly. This fixes a breakage caused by the commit `[raster] Remove 5-level gray AA mode from monochrome rasterizer.'. Problem reported by Markus Trippelsdorf <markus@trippelsdorf.de> and octoploid <octoploid@yandex.com>. * src/raster/ftraster.c (ft_black_render): Handle `FT_RASTER_FLAG_AA'. * src/raster/ftrend1.c (ft_raster1_render): Remove gray AA mode remnants. | ||
| f57fc59e | 2015-01-17 20:41:43 | Run `src/tools/update-copyright'. | ||
| c242fe41 | 2015-01-14 18:48:14 | [raster] Fix uninitialized memory access. Apparently `ras.cProfile' might be uninitialized. This will be the case if `ras.top == ras.cProfile->offset', as can be seen in `End_Profile'. The overshoot code introduced in a change `Fix B/W rasterization of subglyphs with different drop-out modes.' (from 2009-06-18) violated this, accessing `ras.cProfile->flags' unconditionally just before calling `End_Profile' (which then detected that `cProfile' is uninitialized and didn't touch it). This was harmless, and was not detected by valgrind before because the objects were allocated on the `raster_pool', which was always initialized. With recent change to allocate raster buffers on the stack, valgrind now reported this invalid access. * src/raster/ftraster.c (Convert_Glyph): Don't access an uninitialized `cProfile'. | ||
| a773c304 | 2015-01-14 18:16:20 | [raster] Allocate render pool for mono rasterizer on the stack. Instead of using the `render_pool' member of `FT_Library' that is provided down to the rasterizer, completely ignore that and allocate needed objects on the stack instead. With this patch, rasterizing glyphs from different faces from different threads doesn't crash in the monochrome rasterizer. * src/raster/ftraster.c (black_TRaster): Remove `buffer', `buffer_size', and `worker' members. (ft_black_render): Create `buffer' locally. (ft_black_reset): Updated. | ||
| 8dc86358 | 2015-01-14 18:06:22 | [raster] Remove 5-level gray AA mode from monochrome rasterizer. It was off by default and couldn't be turned on at runtime. And the smooth rasterizer superceded it over ten years ago. No point in keeping. Comments suggested that it was there for compatibility with FreeType 1. 550 lines down. * src/raster/ftraster.c (FT_RASTER_OPTION_ANTI_ALIASING, RASTER_GRAY_LINES): Remove macros and all associated code. (black_TWorker): Remove `gray_min_x' and `gray_max_x'. (black_TRaster): Remove `grays' and `gray_width'. (Vertical_Sweep_Init, Vertical_Sweep_Span, Vertical_Sweep_Drop, ft_black_render): Updated. * src/raster/ftrend1.c (ft_raster1_render): Simplify code. (ft_raster5_renderer_class): Removed. | ||
| 3e86711e | 2014-11-25 09: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. | ||
| b3500af7 | 2014-11-19 21: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. | ||
| 426f0e04 | 2014-04-24 07:13:31 | Minor. | ||
| f193637f | 2014-04-23 08:22:33 | * src/raster/ftraster.c (Vertical_Sweep_Span): Use drop-out mode. This spot has been missed while introducing support for various drop-out modes years ago (including no drop-out mode, which this commit fixes). Problem reported by Patrick Thomas <pthomas505@gmail.com>. | ||
| 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. | ||
| fae38207 | 2013-11-13 08:55:46 | Simplify header file hierarchy. This large patch changes the header file directory layout from `include/freetype/...' to `include/...', effectively removing one level. Since the file `ft2build.h' is also located in `include' (and it stays there even after installation), all FreeType header files are now in a single directory. Applications that use (a) `freetype-config' or FreeType's `pkg-config' file to get the include directory for the compiler, and (b) the documented way for header inclusion like #include <ft2build.h> #include FT_FREETYPE_H ... don't need any change to the source code. * include/freetype/*: Move up to... * include/*: ... this directory. * builds/amiga/include/freetype/*: Move up to... * builds/amiga/include/*: ... this directory. */*: Essentially do `s@/freetype/@/@' where appropriate. * CMakeList.txt: Simplify. * builds/unix/freetype-config.in, builds/unix/freetype2.in: For `--cflags', return a single directory. * builds/unix/install.mk (install): No longer try to remove `cache' and `internal' subdirectories; instead, remove the `freetype' subdirectory. | ||
| c06889eb | 2013-06-12 10:58:06 | More compiler warning fixes. */*: Use cast to `FT_Bool' (or `Bool') where appropriate. | ||
| badf3178 | 2013-06-06 09:16:38 | Next round of compiler fixes. * builds/win32/ftdebug.c, builds/wince/ftdebug.c (ft_debug_init): Add proper cast. * include/freetype/internal/ftserv.h (FT_SERVICE_UNAVAILABLE): Fix cast. * include/freetype/internal/ftstream.h: Decorate stream and frame macros with `FT_Long' and `FT_ULong' as appropriate. * src/base/ftrfork.c (raccess_guess_darwin_hfsplus, raccess_guess_darwin_newvfs): Use cast. * src/bdf/bdflib.c (_bdf_set_default_spacing): Use cast. * src/cache/ftcmanag.c (FTC_Manager_Check): Fix cast. * src/cache/ftcmanag.h (FTC_ManagerRec): Ditto. * src/cff/cf2arrst.c (cf2_arrstack_setNum_Elements): Use cast. * src/cff/cf2ft.c (cf2_freeSeacComponent): Ditto. * src/cff/cffobjs.c (remove_subset_prefix, remove_style): Ditto. * src/cid/cidparse.c (cid_parser_new): Use cast. * src/pcf/pcfdrivr.c (PCF_Glyph_Load): Use cast. * src/psaux/psobjs.c (reallocate_t1_table): Fix argument type. * src/raster/ftraster.c (ft_black_reset): Use cast. * src/truetype/ttgxvar.c (FT_Stream_FTell): Use cast. (ALL_POINTS): Fix cast. * src/type1/t1driver.c (t1_ps_get_font_value): Add casts. * src/type1/t1parse.c (T1_Get_Private_Dict): Add cast. | ||
| 8d8508e4 | 2013-06-04 13:09:01 | Missed some cppcheck items. | ||
| dc624ca4 | 2013-06-04 10:30:48 | Apply fixes for cppcheck nitpicks. http://cppcheck.sourceforge.net/ Note that the current version heavily chokes on FreeType, delivering even wrong results. I will report those issues to the cppcheck team so that a newer version gives improved results hopefully. */* Improve variable scopes. */* Remove redundant initializations which get overwritten. * src/base/ftmac.c ,builds/mac/ftmac.c (count_faces_scalable): Remove unused variable. * src/base/ftdbgmem.c (ft_mem_table_destroy): `table' can't be zero. * src/gxvalid/gxvkern.c (gxv_kern_subtable_fmt1_entry_validate): Remove functionless code. * src/tools/ftrandom.c (main): Fix memory leak. | ||
| 073a0e29 | 2013-05-05 10:41:20 | [raster] Fix clang issues. Fix suggested by <octoploid@yandex.com>. * src/raster/ftraster.c (ULong): New typedef. (SCALED): Add proper cast. | ||
| 762bf19a | 2013-03-24 08:37:12 | Typo. | ||
| e3c93015 | 2013-03-14 11:21:17 | */*: Use FT_Err_Ok only. This is a purely mechanical conversion. | ||
| 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. | ||
| 495bd3cc | 2012-06-06 13:24:04 | [ftraster] Fix rounding issue causing visual artifacts. Problem reported by jola <hans-jochen.lau@lhsystems.com>; see http://lists.gnu.org/archive/html/freetype-devel/2012-05/msg00036.html * src/raster/ftraster.c (SMulDiv_No_Round): New macro. (Line_Up): Use it. * src/raster/ftmisc.h (FT_MulDiv_No_Round): Copied from `ftcalc.c'. | ||
| 95111433 | 2012-02-22 07:01:35 | Prepare source code for amalgamation (4/6). * src/smooth/ftgrays.c, src/raster/ftraster.c: Undefine RAS_ARG, RAS_ARGS, RAS_VAR, and RAS_VARS before defining it. * src/smooth/ftgrays.c: s/TRaster/black_TRaster/, s/PRaster/black_PRaster/. * src/raster/ftraster.c: s/TRaster/gray_TRaster/, s/PRaster/gray_PRaster/. | ||
| d55f16df | 2012-02-21 09:21:19 | Prepare source code for amalgamation (3/6). * src/smooth/ftgrays.c: s/TWorker/black_TWorker/, s/PWorker/black_PWorker/. * src/raster/ftraster.c: s/TWorker/gray_TWorker/, s/PWorker/gray_PWorker/ | ||
| 5ccebc4e | 2012-02-21 08:54:55 | Prepare source code for amalgamation (2/6). * src/smooth/ftgrays.c, src/raster/ftraster.c: Undefine FLOOR, CEILING, TRUNC, and SCALED before defining it. | ||
| 126405ad | 2012-02-21 08:48:39 | Prepare source code for amalgamation (1/6). See discussion starting at http://lists.gnu.org/archive/html/freetype-devel/2012-01/msg00037.html * src/smooth/ftgrays.c: s/TBand/gray_TBand/. * src/raster/ftraster.c: s/TBand/black_TBand/. | ||
| c52f44d4 | 2011-11-30 10:46:53 | Whitespace. | ||
| 0039d012 | 2011-01-14 19:44:29 | [raster] Add undocumented drop-out rule to the other bbox side also. * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop): Implement it. | ||
| c02485cb | 2011-01-13 21:55:08 | [raster] Reduce jitter value. This catches a rendering problem with glyph `x' from Tahoma at 10ppem. It seems that the increase of the precision in the change from 2009-06-11 makes a larger jitter value unnecessary. * src/raster/ftraster.c (Set_High_Precision): Implement it. | ||
| 29bc3105 | 2011-01-13 12:22:55 | [raster] Handle drop-outs at glyph borders according to Microsoft. If a drop-out rule would switch on a pixel outside of the glyph's bounding box, use the right (or top) pixel instead. This is an undocumented feature, but some fonts like `Helvetica Neue LT Com 65 Medium' heavily rely on it. Thanks to Greg Hitchcock who explained this behaviour. * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop): Implement it. | ||
| 6a96bbe2 | 2010-10-28 08:51:15 | [ftraster] Minor fixes. Reported by Tom Bishop <wenlin@wenlin.com>. * src/raster/ftraster.c (ULong): Remove unused typedef. (TWorker): Remove unused variable `precision_mask'. | ||
| f0987abd | 2010-10-28 08:33:28 | [ftraster] Fix rendering. Problem reported by Tom Bishop <wenlin@wenlin.com>; see thread starting with http://lists.gnu.org/archive/html/freetype/2010-10/msg00049.html * src/raster/ftraster.c (Line_Up): Replace FMulDiv with SMulDiv since the involved multiplication exceeds 32 bits. | ||
| 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. | ||
| 12cf0316 | 2010-08-29 11:02:24 | [ftraster] Pacify compiler. * src/raster/ftraster.c (ft_black_new) [_STANDALONE_]: `memory' is not used. | ||
| c9de9cbd | 2010-08-06 08:20:28 | [raster] Fix valgrind warning. * src/raster/ftraster.c (Decompose_Curve) <default>: Access point[0] only if we don't hit `limit'. | ||
| c8f5b98b | 2010-07-12 21:13:22 | Remove C++ warnings. */*: Initialize pointers where necessary to make g++ happy. | ||
| 7baeeafc | 2010-04-05 11:19:38 | Fix Savannah bug #29335. * src/raster/ftraster.c (Line_Up): Use slow multiplication to prevent overflow. This shouldn't have any serious impact on speed, however. |