Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 9bf72966 | 2023-12-14 06:11:43 | * src/truetype/ttgxvar.c (ft_var_to_normalized): Fix undefined left-shift. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=63723 | ||
| 01f23c39 | 2023-12-01 23:13:28 | * src/raster/ftraster.c (Draw_Sweep): Swap stub conditions. | ||
| 5999d47d | 2023-12-01 20:50:16 | * src/raster/ftmisc.h (FT_MulDiv): Remove unused copy. | ||
| 8f255c89 | 2023-11-27 22:44:36 | [raster] Speed up Bézier arches with extrema. While it is recommended to have an explicit point at each curve extrema, they might be missing or outline could be rotated. This leads to excessive bisections in raster to find them. This change helps to decrease the number of bisections. The scanline intersections remain monotonous, of course. * src/raster/ftraster.c (Conic_To, Cubic_To): Check that control points cross the scanlines to bisect. | ||
| efbae547 | 2023-11-24 10:23:36 | [raster] Eliminate intensive flow checking. * src/raster/ftraster.c (Draw_Sweep): Pass the flow increment. (Increment): Accept the flow increment. | ||
| 63d3a37e | 2023-11-23 17:50:04 | * src/raster/ftraster.c: Comments, defines, includes, cleanups. | ||
| df39b017 | 2023-11-21 18:12:45 | * src/raster/ftraster.c (FT_Outline_Get_CBox ) [STANDALONE_]: Removed. | ||
| c62027d9 | 2023-11-21 16:54:25 | * src/raster/ftraster.c (Draw_Sweep): No-fault return. (Render_Single_Pass): Updated. | ||
| d77dd24b | 2023-11-21 15:16:56 | [raster] Sweep polishing. * src/raster/ftraster.c (*_Sweep_Span): Polish. (*_Sweep_Drop): Restore tracing, polish. (Draw_Sweep): Simplify the dropout processing loop. | ||
| da8e4289 | 2023-11-21 00:53:50 | [raster] Rearrange dropout control. This reduces the code duplication. * src/raster/ftraster.c (Function_Sweep_Span): Change signature. (Vertical_Sweep_Drop, Horizontal_Sweep_Drop): Focus on pixel setting and move duplicated the dropout control logic to... (Draw_Sweep): ... this function and refactor. (Vertical_Sweep_Span, Horizontal_Sweep_Span): Minor. | ||
| d7c72ff9 | 2023-11-20 22:46:36 | [raster] Use bitwise dropout mode interpretation. * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop, Draw_Sweep, Render_GLyph): Interpret dropout mode using bit masks. | ||
| 050a3207 | 2023-11-15 23:41:56 | [raster] Keep only bottom y-turns. This results in noticeable performance improvement. * src/raster/ftraster.c (Insert_Y_Turns): All bottom y-turns are still sorted and stored; only the maximum top y-turn is recorded now. The function is renamed. (End_Profile): Updated accordingly. (Convert_Glyph): Reserve space for the top value. | ||
| fa59e0d6 | 2023-11-15 16:55:57 | * src/raster/ftraster.c (End_Profile): Reduce branching. (InsNew): Tweak condition. | ||
| c580926f | 2023-11-15 15:17:50 | * src/raster/ftraster.c (Draw_Sweep): Use more natural loop. | ||
| b0265ccd | 2023-11-14 23:32:06 | [raster] Dissolve a loop. * src/raster/ftraster.c (End_Profile): Set initial `X` here... (Draw_Sweep): ... instead of here; delay the `start` decrement. | ||
| 6dc2ecb7 | 2023-11-14 23:06:41 | * src/raster/ftraster.c: Comments. | ||
| aec7e717 | 2023-11-14 16:47:34 | [raster] Stylistic changes. * src/raster/ftraster.c (Line_To): Code it similar to curves; shortcut the flat lines here... (Line_Up): ... instead of here. | ||
| d1b3ef77 | 2023-11-14 15:54:52 | [raster] Revise overshoot setting. * src/raster/ftraster.c (New_Profile, End_Profile): Deal with overshoots locally. (Line_To, Conic_To, Cubic_To): Update callers. | ||
| 667aad58 | 2023-11-14 15:10:52 | * src/raster/ftraster.c (Conic_To, Cubic_To): Fix recent regression. | ||
| 6e7ef168 | 2023-11-13 22:07:42 | * src/raster/ftraster.c (Increment): Minor tweak. | ||
| e9359e29 | 2023-11-12 23:01:49 | [raster] Get rid of the fresh flag. * src/raster/ftraster.c (black_TWorker): Remove the fresh flag. (New_Profile): Set the starting scanline here based on the current coordinate and initialize the joint crossing if necessary. (Line_Up, Bezier_Up): Do not deal with fresh and joint starts at all. (Line_Down, Bezier_Down): Simplify. (Conic_To, Cubic_To): Update the current coordinate after each subsection. | ||
| d5e8686d | 2023-11-11 21:10:29 | [raster] Get rid of the joint flag. * src/raster/ftraster.c (Line_Up, Bezier_Up): Deal with the scanline joints directly based on the initial y-coordinate. (New_Profile, black_TWorker): Remove the boolean flag. | ||
| 9cd403bc | 2023-11-11 10:18:53 | * src/raster/ftraster.c (Line_Up, Bezier_Up): Check "between" earlier. | ||
| 028b0d5c | 2023-11-10 23:25:26 | * src/raster/ftraster.c (Line_Up): Updated and fixed up. This largely synchronizes the entries into `Line_Up` and `Bezier_Up`. Minor bugs in the remainder calculations and accumulations are fixed. | ||
| d5973932 | 2023-11-09 22:52:14 | * src/raster/ftraster.c (End_Profile, Convert_Glyph): Clean up. | ||
| e9a81e4d | 2023-11-09 22:31:36 | * src/raster/ftraster.c (Bezier_Up): Improve joint and loop. | ||
| 6338f2a6 | 2023-11-06 18:56:38 | [raster] Harmonize target bitmap navigation. * src/raster/ftraster.c (black_TWorker): Store signed maximum indexes in both directions instead of unsigned dimensions of the original bitmap. (*_Sweep_*, Render_Glyph, ft_black_render): Updated all users. | ||
| e9202737 | 2023-11-05 23:12:56 | * src/raster/ftraster.c (Bezier_Up): Improve flow. | ||
| 8a2ca26b | 2023-11-05 22:34:16 | [raster] Reshuffle code for readability. * src/raster/ftraster.c (Render_Glyph): Setup the rendering pool here. (ft_black_render): Setup the target bitmap helpers here. | ||
| 9e86fb80 | 2023-11-03 23:59:05 | [raster] Improve profile accounting during sweeping. * src/raster/ftraster.c (TProfile): Get rid of `countL`. (Draw_Sweep): Use `start` for countdown to activation. (Horizontal_Sweep_Drop, Vertical_Sweep_Drop): Rely on `height` and `offset` to verify profile ends for the stub detection. | ||
| 32081d81 | 2023-11-03 23:10:41 | [raster] Consolidate profile increment to the next line. * src/raster/ftraster.c (s/Sort/Increment): Rename this function to reflect its true purpose, delete exhausted profiles here... (Draw_Sweep): ... instead of here. | ||
| 046c4fc7 | 2023-11-03 22:34:37 | [raster] Instantly remove profiles from linked lists. * src/raster/ftraster.c (DelOld): Remove loopy function. (Draw_Sweep): Implement instant profile removal. | ||
| 6d6607b8 | 2023-11-02 22:09:18 | [raster] Modify the split condition. While curving close to a pixel center, vertical and horizontal pass might split the curve differently and cause a rare dropout. This makes the split condition invariant of the sweep direction and more robust. * src/raster/ftraster.c (Bezier_Up): Modify the split condition. | ||
| f2e76e83 | 2023-11-02 22:08:04 | [raster] Remove the jitter exception. The jitter exception used to be applied when two neighboring pixels were barely inside the outline. One the left one was turned on then, which contradicts the OpenType specifications. Intended to remove glitches, it caused disappearing lines and was softened by adding an exception to the exception (#54589). * src/raster/ftraster.c (Vertical_Sweep_Span): Drop the jitter exception. | ||
| dc519d06 | 2023-10-31 15:01:32 | [raster] Simplify dropout detection. * src/raster/ftrater.c (Draw_Sweep): Use a single dropout condition. | ||
| 4e2d1f04 | 2023-10-30 22:46:32 | [raster] Simplify sweeping entry and exit. * src/raster/ftraster.c (Draw_Sweep): Use y-turns to set the range, correctly set the initial position, directly loop through y_turns, and remove a 5-gray remnant at exit. | ||
| 55d0287c | 2023-10-25 23:23:30 | [raster] Switch to routine Int instead of Short. This is mostly cosmetic and removes a few casts, plus Short is promoted to Int in calculations anyway. * src/raster/ftraster.c (Vertical_Sweep_Init, Vertical_Sweep_Span, Vertical_Sweep_Drop, Horizontal_Sweep_Init, Horizontal_Sweep_Span, Horizontal_Sweep_Drop, Draw_Sweep): Mostly s/Short/Int/ and remove casting. | ||
| 8c5ec8dd | 2023-10-23 22:48:34 | [raster] Increase the raster pool density. This only helps to delay the pool overflow and bisections to larger sizes and benefits only very intricate glyphs at reasonable sizes. * src/raster/ftraster.c (TProfile): Use Int instead of Long or PLong when it is sufficient. (New_Profile, End_Profuile, Bezier_Up, Sort): Updated accordingly. | ||
| a0e10a87 | 2023-10-23 17:47:10 | [raster] Slightly improve the pool design. * src/raster/ftraster.c (TProfile): Include the variable array member and repackage with pointers first. (New_Profile): Advance the top using the variable array pointer. | ||
| d1e894b1 | 2023-10-22 13:08:36 | [raster] Clean up sweeping. * src/raster/ftraster.c (Draw_Sweep): Zero initialize the working lists directly and remove unnecessary y-turn checks. (Init_Linked): Removed. | ||
| 09ae6eb6 | 2023-10-22 08:13:35 | * src/raster/ftraster.c (Insert_Y_Turn): Improve flow. | ||
| fab53f7b | 2023-10-21 19:08:20 | * src/pcf/pcfutil.c (BSWAP16): Limit clang support. These ancient builtins have been supported by clang since 2013. We condition it somewhat stricter but still around 2017. This is more portable than `__has_builtin`. Fixes #1260. | ||
| 4e61303a | 2023-10-18 23:13:13 | [raster] Small optimizations. * src/raster/ftraster.c (New_Profile): Set important fields only and delay setting `gProfile` until... (End_Profile): ... it is checked to be valid here. (Convert_Glyph): Updated. | ||
| a35da2c0 | 2023-10-18 18:44:00 | * src/raster/ftraster.c (Convert_Glyph): Remove redundant check. | ||
| 3fa5c845 | 2023-10-17 23:56:23 | [raster] Fix linked profiles in contour loops. This fixes a subtle bug when the last profile in a contour was not properly short-circuited if it was still empty at `End_Profile`. We finalize all linking in `Finalize_Profile_List` now and do nothing else there. The turns are added in `End_Profile`. * src/raster/ftraster.c (Insert_Y_Turn): Moved up unchanged. (End_Profile): Take care of turns but set only preliminary linking. (Finalize_Profile_Table): Take care of linking and null-termination. (Convert_Glyph): Adjusted accordingly. | ||
| 749b8f9d | 2023-10-14 22:28:06 | * src/raster/ftraster.c: Improve tracing. | ||
| 153c038e | 2023-10-13 15:22:32 | [raster] Improve profile accounting. * src/raster/ftraster.c (End_Profile): Do not initiate next profile. (New_Profile): Fully initiate new profile. (Convert_Glyph): Clean up variables, initialize `fProfile` here. | ||
| f09c5e58 | 2023-10-13 13:44:39 | * src/raster/ftraster.c (Convert_Glyph): Fix null-dereference. | ||
| c7fa00bf | 2023-10-13 00:16:02 | [raster] Fix pool overflow checking. * src/raster/ftraster.c (New_Profile, End_Profile): Check for overflow immediately. (Convert_Glyph, Render_Single_Pass): Fix boundaries. | ||
| 14bcb286 | 2023-10-12 22:44:46 | [raster] Miscellaneous clean-ups. * src/raster/ftraster.c (New_Profile): Use NULL. (End_Profile): Optimize variables. (Convert_Glyph): Do not initialize `cProfile` yet. (Render_Single_Pass): Tracing. | ||
| 322e580b | 2023-10-09 22:22:24 | * src/smooth/ftgrays.c: Move the sweep functions... ... out of the setjmp/longjmp scope for readability. | ||
| 84cd2e98 | 2023-10-09 22:11:41 | * src/raster/ftraster.c: Tracing updates. | ||
| 7b308a29 | 2023-09-28 22:56:15 | * src/smooth/ftgrays.c (gray_render_conic) [SSE2]: Improve flow. | ||
| e0e5b838 | 2023-09-25 22:26:15 | * src/gxvalid/gxvcommn.h (GXV_USHORT_TO_SHORT): Removed. | ||
| 49781ab7 | 2023-09-24 20:09:17 | Comment typos. | ||
| 73490681 | 2023-09-24 19:39:10 | * src/base/ftcalc.c (FT_MOVE_SIGN): Enclose assignments. | ||
| c4073d82 | 2023-09-19 22:29:14 | [psaux] Use `FT_SqrtFixed`. * src/psaux/cffdecode.c <cff_op_sqrt>: Call `FT_SqrtFixed`. * src/psaux/psintrp.c <cf2_escSQRT>: Ditto. | ||
| 95b0fe2a | 2023-09-19 22:26:32 | [base] Reintroduce `FT_SqrtFixed`. The general square root calculations are not necessary in FreeType. For vector normalization or length, FreeType uses special functions. It is, however, required in the legacy CFF specifications. * src/base/ftcalc.c (FT_SqrtFixed): New function that uses either Babylonian or bit-wise algorithm, whichever is faster for the given situation. * include/freetype/internal/ftcalc.h (FT_SqrtFixed): Declare it. | ||
| babe6af1 | 2023-09-18 15:01:26 | * src/base/ftcalc.c /* FT_SqrtFixed */: Fix defunct overflow. | ||
| d7b63a96 | 2023-09-14 13:00:07 | * src/tools/apinames.c (read_header_file): Typos. | ||
| 6eb5f2be | 2023-09-13 17:02:31 | Update 2 files - /src/base/ftcalc.c - /include/freetype/internal/ftcalc.h | ||
| 16f311d7 | 2023-09-12 18:35:01 | [base] Fix typo to correct predicate for call * src/base/ftobj.c (FT_Get_Color_Glyph_Paint): check `get_colr_glyph_paint` before calling `get_colr_glyph_paint` and not `get_colr_layer` | ||
| 7d45cf2c | 2023-09-11 20:45:16 | * src/psaux/cffdecode.c (cff_op_sqrt): Correct upper limit. | ||
| 18eb9355 | 2023-09-11 17:00:49 | * src/psaux/cffdecode.c (cff_op_sqrt): Improve initial guess. | ||
| 30b0ce73 | 2023-09-11 16:34:36 | src/psaux/psintrp.c (cf2_escSQRT): Improve initial guess. The worst number of iterations decreased from 11 to 5. | ||
| 17db21f3 | 2023-09-10 22:34:17 | * src/type1/t1afm.c (t1_get_index): Restore `strlen` call. This reverts commit 8ed6d97446f2f3e5523da62eefbbf32ef7c1290e and fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62246 | ||
| 446720a2 | 2023-09-09 23:01:13 | * src/cff/cffparse.c (CFF_Field_Handler): Some s/0/NULL/. | ||
| 8d0897b3 | 2023-09-09 22:20:00 | [type1, cid, type42] Post-cleanup. * include/freetype/internal/psaux.h (T1_FIELD_ZERO): Terminating macro. * src/cid/cidload.c (cid_parse_dict): Use while-loop. * src/type1/t1load.c (parse_dict): Ditto. * src/type42/t42parse.c (t42_parse_dict): Ditto. | ||
| 3302e2f6 | 2023-09-09 17:24:34 | Update forgotten array termini. * src/cid/cidload.c (cid_field_records): Account for added `len`. * src/type1/t1load.c (t1_keywords): Ditto. * src/type42/t42parse.c (t42_keywords): Ditto. | ||
| 7ad9d57c | 2023-09-09 15:19:06 | [type1, cid, type42] Streamline dictionary parsing. When matching the keywords, we avoid calculating their lengths by checking the stored values. This itself is a sufficient pre-check before diving into `memcmp`. Therefore, we remove explicit check of the first characters. * include/freetype/internal/psaux.h (T1_FieldRec): Store length. * src/cid/cidload.c (cid_parse_dict): Use `memcmp` and stored length. * src/type1/t1load.c (parse_dict): Ditto. * src/type42/t42parse.c (t42_parse_dict): Ditto. | ||
| 8ed6d974 | 2023-09-09 15:13:55 | * src/type1/t1afm.c (t1_get_index): Avoid `strlen` call. Instead, we check the terminal zero. | ||
| 68f1b932 | 2023-09-08 16:23:05 | * src/type1/t1driver.c (t1_ps_get_font_value): Avoid redundant null. | ||
| 9c51e21e | 2023-09-07 23:50:35 | [cff, truetype] Improve prefix and suffix removal. * src/cff/cffobjs.c (remove_style): Rewrite using pointers. (remove_subset_prefix): Unwrap loop and use `memmove`. * src/truetype/ttobjs.c (tt_skip_pdffont_random_tag): Unwrap loop and avoid `strlen`. | ||
| 4904d1eb | 2023-09-06 22:58:46 | * src/sfnt/ttpost.c (load_format_20): Micro-optimize. | ||
| 45903920 | 2023-09-05 08:07:17 | [autofit] Fix synchronization mistake between FreeType and ttfautohint. Found by Behdad. * src/autofit/aflatin.c (af_latin_metrics_init_blues): Fix array size of `blue_sorted`: FreeType doesn't have artificial blue zones. | ||
| ad201739 | 2023-09-04 19:22:43 | [autofit] Fix typos. This also reduces the used heap size by a large factor. From Behdad. * src/autofit/afcjk.h (AF_CJKAxisRec): Use `AF_BLUE_STRINGSET_MAX_LEN`. * src/autofit/aflatin.h (AF_LatinAxisRec): Ditto. | ||
| 000b26a3 | 2023-08-30 23:03:02 | * src/sfnt/ttpost.c (load_format_20): Rework tracing. | ||
| 2f7abe48 | 2023-08-29 19:18:43 | Comment added. | ||
| c46c4b8e | 2023-08-29 17:52:06 | * src/sfnt/ttpost.c (load_format_20): Permit long names. Fixes #1254. | ||
| 2d9fce53 | 2023-08-27 07:56:38 | [gzip] Update sources to zlib 1.13. | ||
| 920c5502 | 2023-08-25 19:51:30 | * Version 2.13.2 released. ========================== Tag sources with `VER-2-13-2'. * docs/VERSION.TXT: Add entry for version 2.13.2. * docs/CHANGES: Updated. * docs/release, docs/README, builds/macs/README: Updated. * README, src/base/ftver.rc, builds/windows/vc2010/index.html, builds/windows/visualc/index.html, builds/windows/visualce/index.html, builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/index.html, docs/freetype-config.1: s/2.13.1/2.13.2/, s/2131/2132/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 2. * builds/unix/configure.raw (version_info): Set to 26:1:20. * CMakeLists.txt (VERSION_PATCH): Set to 2. | ||
| 0c817334 | 2023-08-25 17:57:47 | * src/base/ftcalc.c (FT_MulAddFix): Simplify 32-bit rounding. | ||
| d42679b9 | 2023-08-25 18:05:01 | Fix clang warnings. * src/cffload.c (cff_blend_doBlend): Fix type of `sum`. * src/truetype/ttgxvar.c (tt_var_load_item_variation_store): Fix type of `word_delta_count`. | ||
| 97251fd5 | 2023-08-21 23:23:22 | [base] Improve the matrix degeneracy check. Also fixes #1251. * src/base/ftcalc.c (FT_Matrix_Check): To avoid overflow, scale by shifting. * include/freetype/internal/ftcalc.h (FT_Matrix_Check): Update description. | ||
| a9793fea | 2023-08-15 11:30:26 | [base] Avoid UB with memcpy `FT_NEW_ARRAY(p, 0)` sets `p` to `NULL`. `FT_Stream_ReadAt` with a memory based stream uses `FT_MEM_COPY` which is `memcpy` which specifies that it is undefined behavior for either the `src` or `dst` to be `NULL`. Instead of forcing all callers work around calling `FT_Stream_Read` when `buffer == NULL && count == 0` do the check in `FT_StreamRead`. This allows any call with `count == 0` to succesfully read zero bytes without UB. * src/base/ftstream.c (FT_Stream_ReadAt): skip `FT_MEM_COPY` when `count == 0`. (FT_Stream_TryRead): ditto Fixes: #1250 | ||
| a20de84e | 2023-08-12 11:47:41 | Fix warnings in tracing messages for 32bit compilation. Since we now require C99, use `%td` for `ptrdiff_t` and `%zu` for `size_t`. | ||
| 3829fdaa | 2023-08-04 11:41:23 | Avoid overflow in COLR bounds checks. The values read into `base_glyphs_offset_v1` and `layer_offset_v1` may be in the range 0xFFFFFFFD-0xFFFFFFFF. On systems where `unsigned long` is 32 bits adding 4 to such values will wrap and pass bounds checks but accessing values at such offsets will be out of bounds. On the other hand `table_size` has already been tested to be at least `COLRV1_HEADER_SIZE` (34) so it is safe to subtract 4 from it. * src/sfnt/ttcolr.c (tt_face_load_colr): subtract 4 from `table_size` instead of adding 4 to font data offsets in bounds checks Fixes: https://crbug.com/1469348 | ||
| 95a87208 | 2023-08-01 22:48:31 | * src/base/ftobjs.c (open_face_from_buffer): Silence `maybe-uninitialized`. We never call this function without a `driver_name` (#1245). | ||
| b2584c73 | 2023-07-28 22:35:58 | [truetype] Reduce v40 footprint. * src/truetype/ttgload.c (TT_HInt_Glyph, tt_loader_set_pp, tt_loader_init): Refactor code. | ||
| 1ecfd219 | 2023-07-27 16:12:28 | [truetype] Remove Infinality for good (remaining bits). * src/truetype/ttobjs.h: Remove remaining fields. * src/truetype/ttinterp.c: Do not initialize them. * include/freetype/internal/tttypes.h: Remove descriptions. | ||
| 5b7e45ac | 2023-07-27 15:06:38 | [truetype] Remove Infinality for good. Remove everything `#ifdef TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY`, which was undefined for a while now. * include/freetype/internal/tttypes.h: Ditto. * src/truetype/truetype.c: Ditto. * src/truetype/ttdriver.c: Ditto. * src/truetype/ttgload.c: Ditto. * src/truetype/ttinterp.c: Ditto. * src/truetype/ttinterp.h: Ditto. * src/truetype/ttobjs.c: Ditto. * src/truetype/ttsubpix.[ch]: Remove files. * src/truetype/rules.mk: Don't mention "ttsubpix.c". | ||
| 7c542d02 | 2023-07-21 21:31:28 | * src/smooth/ftgrays.c (FT_SSE2): Fix definition for VMS. | ||
| dd3c9c5f | 2023-07-18 13:25:57 | [woff2] Clean up on large brotli expansion * src/sfnt/sfwoff2.c (woff2_open_font): set error and goto cleanup Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=60711 | ||
| 336503df | 2023-07-16 07:36:01 | [woff2] Avoid allocation bomb. This is a fix for commit 85167dbd5, reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=60615 * src/sfnt/sfwoff2.c (MAX_SFNT_SIZE): New macro. (woff2_open_font): Use it to limit the maximum size of an uncompressed WOFF2 font. | ||
| 3c92e7bf | 2023-07-14 18:58:55 | [cff] Fix compiler warning. * src/cff/cffparse.c, src/cff/cffparse.h: Make `cff_parse_fixed` a local function. | ||
| 85167dbd | 2023-07-13 16:49:34 | [woff2] Remove sfnt size guess check In WOFF the `totalSfntSize` must be correct, however in WOFF2 this value is now just a hint and a conforming implementation must not reject otherwise valid data if the `totalSfntSize` turns out not to be exact. * src/sfnt/sfwoff2.c (woff2_open_font): remove check that uncompressed woff2 data would fit in the sfnt size guess. Fixes: #1235 | ||
| 26a7f047 | 2023-07-11 01:40:25 | [cff] Make blend operator work with floats in private dicts. The CFF2 blend operator takes N default values and corresponding sets of deltas and pushes N values specific to a designspace location. CFF has a floating point numeric type and the FreeType blending code was not converting those into its internal 16.16 Fixed type format. Fixes #1243. * src/cff/cffparse.c (do_fixed): Handle floating point numbers. Also fix scaling overflow check for integer-to-fixed conversion. * src/cff/cffload.c (cff_blend_doBlend): Updated. | ||
| dec2743e | 2023-07-07 19:24:48 | * src/truetype/ttgload.c (TT_Hint_Glyph): More mostly cosmetic update. This is a follow-up to commit 49c74ac02, which creates a new local variable "exec = loader->exec", and shortening a lot of "loader->exec". This commit does two more such changes missed in that first commit. Signed-off-by: Hin-Tak Leung <htl10@users.sourceforge.net> | ||
| 355e9197 | 2023-07-06 21:07:16 | [gzip] Don't compile internal zlib development files when using system zlib. `src/gzip/rules.mk` compiles the internal zlib sources even when using the zlib development files provided by a host system. If the internal zlib development files are not present, FreeType fails to build from source. This patch ensures the internal zlib development files are only prerequisites when not using zlib development files on a host system. * src/gzip/rules.mk (GZIP_DRV_SRCS): Define conditionally. | ||
| e4586d96 | 2023-06-24 05:18:54 | * Version 2.13.1 released. ========================== Tag sources with `VER-2-13-1'. * docs/VERSION.TXT: Add entry for version 2.13.1. * docs/CHANGES: Updated. * docs/release, docs/README, builds/macs/README: Updated. * README, src/base/ftver.rc, builds/windows/vc2010/index.html, builds/windows/visualc/index.html, builds/windows/visualce/index.html, builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/index.html, docs/freetype-config.1: s/2.13.0/2.13/1/, s/2130/2131/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 1. * builds/unix/configure.raw (version_info): Set to 26:0:20. * CMakeLists.txt (VERSION_PATCH): Set to 1. * subprojects/libpng.wrap, subprojects/zlib.wrap, subprojects/dlg: Updated. |