Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| bbc445e1 | 2025-01-11 23:11:07 | [bdf] Speed up bitmap parsing. A dedicated parser of bitmap data with minimal error checking and no string comparisons helps to improve performance. * src/bdf/bdflib.c (bdf_parse_bitmap_): New dedicated bitmap parser. (bdf_parse_glyphs_): Pass to `bdf_parse_bitmap_` on BITMAP. | ||
| 4433c7b7 | 2025-01-11 18:54:04 | * src/bdf/bdflib.c (a2i): Formatting. | ||
| ff5872b4 | 2025-01-10 22:55:13 | * src/bdf/bdflib.c (bdf_parse_*_): Minor improvements. | ||
| cf451e5f | 2025-01-10 22:31:07 | * src/bdf/bdf.h (bdf_font_t): Correct `internal` type. * src/bdf/bdflib.c (*): Update users. | ||
| 8d536080 | 2025-01-10 22:44:40 | * builds/windows/ftsystem.c: Fix ancient condition. | ||
| 1f57020f | 2025-01-10 03:23:41 | * src/bdf/bdflib.c (bdf_parse_start_): Fix tracing labels. | ||
| 704d5405 | 2025-01-09 15:18:55 | * MSBuild.rsp: Force console color for mintty. | ||
| 1400b20a | 2025-01-09 13:21:50 | * CMakeLists.txt: Use modern IMPORTED targets. This resolves build problems with newer libPNG versions by switching to using IMPORTED CMake targets for common libraries where provided. To do this the required CMake version is raised to version 3.12. Doing this seems justified as using IMPORTED targets is a cleaner and more powerful solution that can leverage advanced and CMake-specific features that may be utilized by the referred dependencies' CMake modules. Resolves #1311. | ||
| 73318c86 | 2025-01-08 15:45:32 | [cff] Remove size/slot checks. After the previous commit, cff_glyph_load is no longer called without first checking for valid size and glyph objects in FT_Glyph_Load and these checks can be removed downstream. * src/cff/cffdrivr.c (cff_glyph_load): Remove `size` and `glyph` checks. * src/cff/cffgload.c (cff_slot_load): Ditto. | ||
| c7a255b4 | 2025-01-07 19:52:29 | * src/cff/cffdrivr.c (cff_get_advances): Do only fast advances. Otherwise, let TT_Get_Advances fall back on cff_load_glyph to do slow advances. This avoids unchecked access to cff_load_glyph and this is how tt_get_advances is implemented. | ||
| 81330e1f | 2025-01-03 22:54:20 | * src/truetype/ttgload.c (TT_Load_Glyph): Consolidate flag setting. | ||
| 5245fd69 | 2025-01-03 21:26:10 | Delay FT_GLYPH_FORMAT_OUTLINE assignmets. This assignmets used to be done prematurely before errors were checked and outlines were actually loaded. Delaying the assignment provides certain protection against careless usage of malformed input that should now remain FT_GLYPH_FORMAT_NONE. * src/cff/cffgload.c (cff_slot_load): Ditto. * src/cid/cidgload.c (cid_slot_load_glyph): Ditto. * src/pfr/pfrobjs.c (pfr_slot_load): Ditto. * src/truetype/ttgload.c (TT_Load_Glyph): Ditto. * src/type1/t1gload.c (T1_Load_Glyph): Ditto. | ||
| afc7000c | 2025-01-03 18:17:49 | * builds/compiler/gcc-dev.mk: Silence some warnings. | ||
| 64f8b7fb | 2025-01-02 18:22:24 | Remove superfluous outline zeroing. This is already done by `ft_glyphslot_clear`. * src/cff/cffgload.c (cff_slot_load): Do not zero outline fields. * src/cid/cidgload.c (cid_slot_load_glyph: Ditto. * src/pfr/pfrobjs.c (pfr_slot_load): Ditto. * src/truetype/ttgload.c (load_sbit_image): Ditto. * src/type1/t1gload.c (T1_Load_Glyph): Ditto. | ||
| 10b3b14d | 2025-01-01 23:04:14 | * src/truetype/ttobjs.c: Abbreviate tracing. | ||
| 1beb83fd | 2025-01-01 22:28:36 | * src/sfnt/ttsbit.c (tt_face_load_sbix_image): Refactor `flip`. | ||
| abed051e | 2025-01-01 14:40:58 | [truetype] Consolidate bitmap strike handling. * src/truetype/ttgload.c (TT_Load_Glyph): Relocate omitted whitespace strike handling from here... (load_sbit_image): ... to here. | ||
| 4ef8eed1 | 2024-12-31 16:25:50 | [truetype] Ingnore FT_LOAD_NO_BITMAP in bitmap-only fonts. For consistency with other bitmap-only fonts, we should ignore this flag of the font is not scalable. * src/truetype/ttgload.c (TT_Load_Glyph): Check if face is scalable when checking for FT_LOAD_NO_BITMAP. * docs/CHANGES: Start new chapter wtith this change. | ||
| 38272bf8 | 2024-12-16 14:29:36 | [ftstroke] Fix invalid pointer assignement to `arc` In `FT_Stroker_ConicTo` and `FT_Stroker_CubicTo` there is a `bez_stack`. `arc` is initialized with `arc = bez_stack` and is never set to point into any different object. The main loop looks like `while ( arc >= bez_stack )` which is depending on a later `arc -= 2` (or `arc -= 3`) to make `arc` point to before `bez_stack`. However, using pointer subtraction to make `arc` point outside the array is undefined behavior, and attempting to use the value in the loop predicate is "very" undefined behavior. (C99 "Additive operators" 6.5.6.8.) This particular undefined behavior was discovered as either hangs or MemorySantizer issues after "[InstCombine] Infer nuw for gep inbounds from base of object" [0]. With this change, clang can infer that `arc` must always point into the `bez_stack` object and therefore cannot be at a "negative index" so the predicate is always true. [0] https://github.com/llvm/llvm-project/commit/e21ab4d16b555c28ded307571d138f594f33e325 * src/base/ftstroke.c (FT_Stroker_ConicTo, FT_Stroker_CubicTo): test loop exit condition (there are no more arcs to process) before decrementing `arc` Fixes: #1307 | ||
| 59320b2d | 2024-12-04 16:55:10 | [cff] Fix leak of cmap data When `sfnt->load_face` succeeds it has already loaded any (optional) cmap data. As a result, a subsequent call to `sfnt->load_cmap` will overwrite the cmap data pointer with a new copy of the data but not free the old, leading to a leak. This is a fix for "* src/cff/cffobjs.c (cff_face_init): Better handling of Type0 fonts.". This still allows the cmap to be missing but avoids the leak by only calling `sfnt->load_cmap` when there is no `head` table (the font data is not being loaded as OpenType/CFF). * src/cff/cffobjs.c (cff_face_init): Fix leak Fixes: #1306 | ||
| 3f3e3de3 | 2024-11-06 06:28:41 | * src/cff/cffobjs.c (cff_face_init): Better handling of Type0 fonts. This issue relates to the PDF specification and its usage of CFF-based embedded Type0 fonts. For Type0 fonts containing CID-keyed descendant CFF-based fonts, the glyph index is the CID present in the content stream. As a result, there is no requirement for a 'cmap' table to be present in the font since the glyph indices are derived directly from the CIDs. FreeType throws an error when it doesn’t find a 'cmap' table for such an Open Type font containing CFF outlines. This commit relaxes this requirement for a 'cmap' table for such fonts. | ||
| 0ae7e607 | 2024-10-18 14:02:22 | Download the latest gnu-config files in `make dist`. * builds/toplevel.mk: In `make dist`, checkout gnu-config git repository at savannah, copy the latest versions of `config.guess` and `config.sub` to builds/unix/. Also the latest version of `gitlog-to-changelog` is used to generate `ChangeLog`. | ||
| 13944366 | 2024-10-15 18:07:55 | Move generic destroy to later in the face and size destruction. * src/base/ftobjs.c (destroy_size, destroy_face): This is such that the generic destroy can be used to call `FT_Done_Library`. For that to work, it needs to call it *after* having removed the face from the respective module. | ||
| f02bffad | 2024-10-14 11:47:31 | * src/truetype/ttgload.c (load_truetype_glyph): Rearrange. | ||
| 5f2abe76 | 2024-10-13 03:06:42 | * autogen.sh: Fix for Solaris 10. o Replace `test -e` by `test -d` (directory) and `-h` (symlink), because pre-POSIX /bin/sh of Solaris 10 does not support `test -e`. o Replace the combination of `head` and `sed ...` by single sed command `sed -n 1...p`. GNU libtoolize with Solaris 10 /bin/sh complains "Broken Pipe" for the closure of stdout by `head`. Let `sed` receive all stdout and discard. | ||
| 089ccb1b | 2024-10-13 12:14:43 | * src/smooth/ftgrays.c (gray_convert_glyph): Clear stack pointers. Fixes a dangling pointer warning, see #1299. | ||
| 5f20c892 | 2024-10-13 10:20:42 | apinames: Fix a buffer overrun for VMS platform. Some output formats may rewrite symbol names during the output, like the concatenation of "64__" suffix on VMS. To estimate sufficient size to store symbol name, pass the output format info to `names_add`. For VMS, `names_add` allocates longer buffer to append "64__". * apinames.c (SUFFIX_VMS_64ADDR): New macro of "64__". (main): Pass the format info to `read_header_file`. (read_header_file): Pass the format info to `names_add`. (names_add): Receive the format info, and reserve the symbol name buffer 4 byte longer in the case of VMS, to append the suffix in `names_dump`. | ||
| 26b545f3 | 2024-10-13 11:09:40 | apinames: Fix out-of-scope reference of a static array. * apinames.c (names_dump): For WATCOM_LBC format, the DLL name with no suffix is constructed on a static array temp[], but the scope is closed before use it. The declaration of temp[] is moved to the wider scope for the dumping part to refer it. | ||
| 7c09421d | 2024-10-12 08:22:51 | * vms_make.com: Format rules. Use tabs in rules only à la Makefile. | ||
| b4ca23be | 2024-10-12 10:57:59 | * meson.build: Define DLL_EXPORT for shared library only. Fixes #1298. | ||
| 78ff3535 | 2024-10-12 10:51:25 | * meson.build: Minor improvements. | ||
| 34aed655 | 2024-10-12 10:49:46 | * meson.build: Fix `bzip2` option handling. | ||
| f4c2a44e | 2024-10-12 10:47:38 | * meson.build: Add support for compiling with error strings. * meson_options.txt: Document it. | ||
| 0dd4eef6 | 2024-10-10 15:56:22 | Fix help message of apinames. * src/tools/apinames.c: The first header file must be given after the options. All arguments after the first header file are dealt as header files to be parsed, regardless with their leading "-". For example, "apinames include/freetype/freetype.h -dFREETYPE.DLL" warns "unable to open -dFREETYPE.DLL". Thus, the "header1" must be given after the arguments to be parsed as the options. | ||
| c8274587 | 2024-09-21 06:41:47 | Minor fixes for OpenVMS. * vms_name.com: Suppress a warning with the latest Clang compiler. * builds/vms/apinames_vms.bash: Use absolute path to avoid dependency on the environment. | ||
| 83af801b | 2024-09-07 13:44:57 | * src/sfnt/ttsbit.c (tt_face_load_sbix_image): Respect metrics_only. Also fixes recursive flip. | ||
| 30080320 | 2024-09-06 13:43:47 | * src/sfnt/ttsbit.c (tt_face_load_sbix_image): Tweak loop. | ||
| 98283cb3 | 2024-09-06 17:03:58 | [sfnt] Support sbix graphicType 'flip'. * src/sfnt/ttsbit.c (tt_face_load_sbix_image): Currently undocumented by Apple, this flips the bitmap data horizontally. It is used on macOS in Apple Color Emoji; 19.4d6e1; 2024-02-05 (file `Apple Color Emoji.ttc`). Fixes issue #1282. | ||
| aaa559ea | 2024-09-04 22:33:01 | Add `clang` to host compiler candidates in cross building. * builds/unix/configure.raw: In cross building, `clang` is tried if there is no `gcc`, nor `cc`. | ||
| e622c3c4 | 2024-09-03 15:59:42 | Improve the build rule for `apinames`. * builds/unix/configure.raw: copy `CFLAGS` & `LDFLAGS` values to `CFLAGS_BUILD` & `LDFLAGS_BUILD`, in a self-hosting case. * builds/unix/unix-cc.in: set `CCexe_CFLAGS` & `CCexe_LDFLAGS` by `CFLAGS_BUILD` & `LDFLAGS_BUILD`. In some confused environments, simple building like `cc -o apinames apinames.c` is no longer able to build an executable running on the host. The validity of `CC` is tested with consideration of `CFLAGS` and `LDFLAGS`, thus, duplicating `CFLAGS` & `LDFLAGS` to `CCexe_CFLAGS` & `CCexe_LDFLAGS` (via XXX_BUILD) would be slightly safer in a self-hosting build. Fixes the issue #1296. | ||
| d2612e1c | 2024-08-26 07:01:19 | * src/sfnt/ttcmap.c (tt_cmap*_get_info): Remove casting. | ||
| 4f00846d | 2024-08-25 18:13:10 | * include/freetype/ftimage.h (FT_Bitmap): Describe empty bitmap. | ||
| f92c9655 | 2024-08-13 23:29:13 | Fix various typos. | ||
| c4e6791f | 2024-08-12 20:19:19 | * messon.build: Install `include/freetype/ftlogging.h`. Fixes #1292. | ||
| 42608f77 | 2024-08-11 20:30:23 | * Version 2.13.3 released. ========================== Tag sources with `VER-2-13-3'. * docs/VERSION.TXT: Add entry for version 2.13.3. * 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.2/2.13.3/, s/2132/2133/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 3. * builds/unix/configure.raw (version_info): Set to 26:2:20. * CMakeLists.txt (VERSION_PATCH): Set to 3. | ||
| a4b4e3ec | 2024-08-12 12:43:14 | * meson.build: Install `freetype2.m4`. Fixes #1290. | ||
| 6b992aaa | 2024-08-11 19:44:13 | * src/*/*: Fix C++ compilation; fix clang warnings. | ||
| 8fc8b131 | 2024-08-11 18:37:48 | * subprojects/*.wrap: Updated. | ||
| ed8b82ba | 2024-08-08 10:28:05 | Various minor documentation or formatting fixes. | ||
| ec378cec | 2024-08-07 21:23:44 | tttables.h (FT_Get_CMap_Format): Minor documentation improvement. | ||
| 1f72a120 | 2024-08-05 13:05:51 | * src/truetype/ttgxvar.c (ft_var_readpacked*): Minor. | ||
| e181911d | 2024-08-05 13:02:04 | * src/base/ftstream.c (FT_Stream_ReadFields): Switch to `FT_Offset`. | ||
| a48cddde | 2024-08-01 21:15:46 | * src/winfonts/winfnt.c (fnt_face_get_dll_font): Unwrap arithmetic. | ||
| 72e199e8 | 2024-08-01 21:12:41 | * src/base/ftstream.c (FT_Stream_ReadFields): Update condition. | ||
| 7c75b8a7 | 2024-08-01 19:14:44 | [truetype/GX] Use more robust conditions. * src/truetype/ttgxvar.c (ft_var_readpacked{points,deltas}): Rewrite conditions to avoid undefined behavior. | ||
| 5e116bb0 | 2024-07-30 21:51:51 | [truetype/GX] Read points and deltas more carefully. Hopefully fixes newly introduced buffer overflows: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=70807 https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=70809 * src/truetype/ttgxvar.c (ft_var_readpacked{points,deltas}): Explicitly check stream frame limits and modify run counting. | ||
| 104f8544 | 2024-07-29 20:26:00 | [truetype/GX] Read stream more aggressively. With ample checks against the table size, we should be able to use macros without the limit checks and functional calls. * src/truetype/ttgxvar.c (ft_var_readpacked{points,deltas}): Use FT_NEXT_* instead of FT_GET_*. | ||
| 3f8edd23 | 2024-07-28 20:56:07 | * src/sfnt/ttload.c (tt_face_load_name): Shorten dereference. | ||
| d42bffd4 | 2024-07-28 20:32:41 | * src/autofit/afmodule.c (af_autofitter_load_glyph): Shorten deref. | ||
| 24888540 | 2024-07-28 19:42:49 | [bdf,pcf,winfonts,sfnt] Remove barely used marcros. * include/freetype/internal/ftobjs.h (FT_FACE_SIZE, FT_SIZE_FACE): Removed. * src/bdf/bdfdrivr.c (BDF_Glyph_Load): Updated. * src/pcf/pcfdrivr.c (PCF_Glyph_Load): Ditto. * src/winfonts/winfnt.c (FNT_Load_Glyph): Ditto * src/sfnt/ttbdf.c (tt_face_find_bdf_prop): Ditto. | ||
| 97069edd | 2024-07-27 20:41:25 | * include/freetype/internal/ftcalc.h (FT_MSB)[_M_ARM64EC]: Added. | ||
| 1452355d | 2024-07-18 09:31:19 | * src/truetype/ttobjs.c (tt_size_run_prep): Correct scaling of CVT values. This reverts the scaling behaviour introduced in commit 37580053. Fixes issue #1005. | ||
| 37cefe33 | 2024-06-13 12:01:54 | * psobjs.c (ps_table_add): Check length before calling `FT_MEM_CPY`. Fixes issue #1280. | ||
| 22803461 | 2024-06-28 17:34:05 | CMakeLists.txt: Respect FT_DISABLE_ZLIB value The CMake build uses `find_package` to look for dependencies. Before calling `find_package` it looks to see if the dependency was disabled. If not the associated `_FOUND` variable will be set. This value is then checked to determine if the dependency is added. However `find_package(PNG)` calls `find_package(ZLIB)` within its find module. So in the case of `FT_DISABLE_ZLIB=TRUE` and `FT_DISABLE_PNG=FALSE` the `ZLIB_FOUND` value can be set and even though `FT_DISABLE_ZLIB` is turned on. Unset the value of `ZLIB_FOUND` after the call to `find_package(PNG)` so the value is only set when `FT_DISABLE_ZLIB` is turned off. | ||
| bab9564a | 2024-06-26 05:39:11 | Make 'multi' build work again. * src/psaux/psobjs.c: Include `psft.h`. * src/sfnt/rules.mk (SFNT_DRV_SRC): Add `ttgpos.c`. Fixes issue #1284. | ||
| 73720c7c | 2024-06-23 10:58:00 | * src/truetype/ttgload.c (load_truetype_glyph): Unsigned fix. | ||
| 044d142b | 2024-06-20 22:16:51 | Use unsigned tags `FT_Outline`. This change comes along with 2a7bb4596f56 ans is only meant to reduce pointer casting in the code. * include/freetype/ftimage.h (FT_Outline): Do it. * src/*: Update `FT_Outline` users. | ||
| b1cbcb20 | 2024-06-20 15:00:20 | [ttgxvar] Avoid "applying zero offset to null pointer" In C it is undefined behavior to do arithmetic on a null pointer, including adding zero. When using NotoSansKhmer[wdth,wght].ttf UBSAN produces a report like ttgxvar.c:1052:31: runtime error: applying zero offset to null pointer when adding zero to `varData->deltaSet` (which is null) to produce `bytes`. Protect against all the potential issues of this kind by returning early if `varData->regionIdxCount == 0`. * src/truetype/ttgxvar.c (tt_var_get_item_delta): early return on no regions | ||
| 2a7bb459 | 2024-06-20 20:49:56 | Use unsigned point and contour indexing in `FT_Outline`. This doubles the number or allowed points, see https://github.com/harfbuzz/harfbuzz/issues/4752 Although it is hardly practical to use more than 32767 points, other font engines seem to support it. * docs/CHANGES: Announce it. * include/freetype/ftimage.h (FT_Outline): Do it and update limits. * src/*: Update `FT_Outline` users. | ||
| 2b9fdec5 | 2024-06-19 21:38:58 | * src/pfr/pfrgload.c (pfr_glyph_curve_to): Avoid casting. | ||
| 7a753c96 | 2024-06-18 21:14:58 | * src/base/ftgloadr.c (FT_GlyphLoader_Prepare): Minor refactoring. | ||
| 93a067e3 | 2024-06-18 17:48:41 | [base, autofit, psaux] Remove unnecessary casting. * src/autofit/afhints.c (af_glyph_hints_reload): Remove (short) casting. * src/base/ftgloadr.c (FT_GlyphLoader_Add): Ditto. * src/psaux/psobjs.c ({t1,cff,ps}_builder_{add,close}_contour): Ditto. | ||
| deba7feb | 2024-06-18 14:01:58 | * include/freetype/ftimage.h: Explain standard types. | ||
| d41a855a | 2024-05-29 17:01:29 | [ttgxvar] Replace tabs with spaces Also clarify comments around conversion and clamping. * src/truetype/ttgxvar.c (ft_var_to_normalized): doit | ||
| 7ff43d3e | 2024-05-26 19:40:20 | [truetype/GX] Consolidate memory allocations. * src/truetype/ttgxvar.c (tt_face_vary_cvt, TT_Vary_Apply_Glyph_Deltas): Allocate and split bigger memory blocks, avoid unnecessary zeroing, do not copy shared tuples, revise error exit paths. | ||
| 3416ac16 | 2024-05-26 08:10:21 | Whitespace. | ||
| b6dbbd96 | 2024-05-24 17:38:14 | * src/truetype/ttgxvar.c (ft_var_apply_tuple): Reduce checks. | ||
| 70299c92 | 2024-05-23 22:50:32 | Revert "[truetype] Reduce allocation scope." This reverts commit 9ff4153cbfd60491f11bb56905ce6e20e94d23c7. | ||
| 9ff4153c | 2024-05-22 23:38:34 | [truetype] Reduce allocation scope. * src/truetype/ttgxvar.c (TT_Vary_Apply_Glyph_Deltas): Reduce scope of `points_org` and 'points_out`. | ||
| a4988736 | 2024-05-22 22:17:50 | * .gitlab-ci.yml: Disable UWP compilation. | ||
| 42d406ab | 2024-05-22 21:08:34 | * include/freetype/internal/ftmemory.h (FT_MEM_DUP): Fix g++ error. | ||
| 5f131cfd | 2024-05-21 16:24:43 | [cff, truetype] Validate variation axes immediately. Instead of validating variation axes in every access, OpenType specs suggest that peak = 0 be used to tag invalid ranges. This implements just that once during loading. * src/cff/cffload.c (cff_blend_build_vector): Move the range checks... (cff_vstore_load): ... here. * src/truetype/ttgxvar.c (tt_var_get_item_delta): Ditto... (tt_var_load_item_variation_store): ... ditto. | ||
| 99be2b31 | 2024-05-21 18:26:09 | [cff, truetype] Rearrange variation range checks. This should achieve quicker results for common cases. * src/cff/cffload.c (cff_blend_build_vector): Rearrange conditionals. * src/truetype/ttgxvar.c (tt_var_get_item_delta): Ditto. | ||
| 347276c1 | 2024-05-21 13:12:45 | * src/truetype/ttgxvar.c (tt_var_get_item_delta): Align with specs. | ||
| 39f2fbf8 | 2024-05-20 22:47:14 | * src/truetype/ttgxvar.c (tt_var_get_item_delta): Minor refactoring. | ||
| 4ccdc9f9 | 2024-05-20 18:53:57 | [cff] Optimize the blend vector computations. * src/cff/cffload.c (cff_blend_build_vector): Use FT_MulDiv and skip multiplying by 1. | ||
| b25265fe | 2024-05-19 22:58:23 | [bdf] Use concise macros. * src/bdf/bdflib.c (bdf_create_property): Use FT_STRDUP. (bdf_parse_glyphs_, bdf_parse_start_): Use FT_DUP for brevity. | ||
| 026fd5d4 | 2024-05-19 22:54:57 | [cache] Use FT_DUP to duplicate data. * src/cache/ftcsbits.c (ftc_sbit_copy_bitmap): Use concise FT_MEM_DUP. | ||
| d7cf931a | 2024-05-19 22:48:13 | [truetype, type1] Use FT_DUP to duplicate data. * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Use concise FT_DUP. * src/truetype/ttgxvar.c (TT_Get_MM_Var): Ditto. * src/type1/t1load.c (parse_subrs): Ditto. | ||
| cdd3572e | 2024-05-17 22:25:00 | * builds/windows/ftsystem.c: Use _WINRT_DLL to check for UWP. Fixes compilation using Windows GDK, reported by Erin Melucci. | ||
| 68399b42 | 2024-05-13 16:57:35 | * include/freetype/ftmm.h: Include `freetype.h`. Reported by Ben Wagner, see !326. | ||
| b8db8197 | 2024-05-12 22:38:38 | [type1/MM] Safer handle arrays of different types. * src/type1/t1load.c (parse_blend_design_map): Separately allocate... (T1_Done_Blend): ... and free `design_points` and `blend_points`. | ||
| 5b1cde80 | 2024-05-11 23:27:34 | * src/type1/t1load.c (parse_blend_design_map): Add risky cast. | ||
| e834786b | 2024-05-11 23:25:37 | * docs/CHANGES: Mention the last commit. | ||
| 4a85db7e | 2024-05-11 22:19:25 | [type1/MM] Tighten headers. * include/freetype/internal/t1types.h: Host PS_DesignMap and PS_Blend. * include/freetype/ftmm.h: Host and document TT_MAX_MM_XXX. * include/freetype/t1tables.h: Remove them from here. | ||
| b875924a | 2024-05-10 23:01:23 | * src/pshinter/pshrec.c (ps_hints_stem): Correct argument. | ||
| a4642422 | 2024-05-08 11:33:47 | [psaux] Fix location and type order in initializer `T1_FIELD_ZERO` is used to zero initialize a `T1_FieldRec`. `T1_FIELD_ZERO` is currently initilizing `T1_FieldRec::location` with a `T1_FieldType` and `T1_FieldRec::type` with a `T1_FieldLocation`. This was detected with `-Wenum-conversion`. * include/freetype/internal/psaux.h (T1_FIELD_ZERO): correct order of initalizers | ||
| 1264b84c | 2024-05-07 23:35:59 | * include/freetype/internal/psaux.h: Fix g++ warning. Reported by Hin-Tak Leung. | ||
| 5858fa16 | 2024-05-07 18:19:58 | [colr] Avoid overflow in range checks In 32 bit builds `FT_ULong` is 32 bits and can silently overflow when a large number is read into one and then it is summed or multiplied with another number. Checks for range overflow must be written so that they themselves do not overflow. Also ensure that the table_size is always the first part of the range check and consistently use `<` or `<=`. * src/sfnt/ttcolr.c (tt_face_load_colr): Avoid overflow. (find_base_glyph_v1_record): Remove old work-around. Bug: https://issues.chromium.org/issues/41495455 Bug: https://issues.chromium.org/issues/40945818 | ||
| 2240e21c | 2024-05-06 21:53:24 | .mailmap: Fix entry for Ben Wagner. |