-
d399657f
by Werner Lemberg at 2023-02-26T20:18:54+01:00
* src/*: Replace leading underscores with trailing ones in dummy variables.
This is to avoid clang warnings.
-
2257f9ab
by Werner Lemberg at 2023-02-26T20:23:43+01:00
* include/freetype/internal/compiler-macros.h (FALL_THROUGH): Update.
This follows
https://lists.gnu.org/archive/html/bug-gnulib/2023-02/msg00159.html
-
638df2fe
by Alexei Podtelezhnikov at 2023-02-27T21:54:23-05:00
[truetype] Treat 38 as 40 without Infinality.
* include/freetype/ftdriver.h (TT_INTERPRETER_VERSION_38): Reinstate.
* src/truetype/ttdriver.c (tt_property_set): Fallback from 38 to 40.
-
d874ffa9
by Werner Lemberg at 2023-03-01T06:36:59+01:00
* include/freetype/internal/compiler-macros.h (FALL_THROUGH): Update.
This follows
https://lists.gnu.org/archive/html/bug-gnulib/2023-02/msg00200.html
-
79c8bd91
by ubawurinna at 2023-03-01T18:09:56+01:00
[gzip] Fix static linking.
Without this patch, static linking with MS Visual Studio causes linking
errors.
* src/gzip/ftgzip.c: Set `ZEXPORT` to nothing and `ZEXTERN` to static for
all compilers.
-
e8931f8c
by ubawurinna at 2023-03-01T18:20:46+00:00
* src/gzip/README.freetype: Update version.
-
e95e6234
by Alexei Podtelezhnikov at 2023-03-02T17:58:03+00:00
* src/cff/cffload.c (cff_subfont_load): Synonymous update.
-
09b326fa
by Ben Wagner at 2023-03-02T20:56:41+01:00
Avoid strtol on non-null-terminated data.
Technically, `strtol` can only be used with C strings terminated with
`\0`. CID data is not generally null-terminated and often does not
contain a `\0` if it is hex-encoded. AddressSanitizer with `ASAN_OPTIONS`
containing `strict_string_checks=1` verifies this by using an adversarial
`strtol` that always reads to the terminating `\0`.
To avoid undefined behavior from `strtol` in `cid_parser_new`, use the
parser to parse the tokens instead of attempting to parse them ad-hoc.
This will internally use `PS_Conv_Strtol` to parse the integer, which
respects the parser's limits and directly implements the PostScript
parsing rules for integers.
* src/cid/cidparse.c (cid_parser_new): Use the parser to parse the
tokens.
Fixes: https://bugs.chromium.org/p/chromium/issues/detail?id=1420329
-
5c37b640
by Alexei Podtelezhnikov at 2023-03-02T20:53:21+00:00
* configure: Use `sed` instead of `grep`.
This is more portable and consistent with `autogen.sh`.
-
5ac6276a
by Alexei Podtelezhnikov at 2023-03-03T17:21:10+00:00
[cff,cid,type1] Shorten de-referencing.
* src/cff/cffobjs.c (cff_clot_init): Use immediate library reference.
* src/cid/cidobjs.c (cid_slot_init): Ditto.
* src/type1/t1objs.c (T1_GlyphSlot_Init): Ditto.
-
2adef94f
by Alexei Podtelezhnikov at 2023-03-03T18:40:48+00:00
* src/cff/cffobjs.c (cff_size_get_globals_funcs): Shorten de-referencing.
-
49eac0da
by Alexei Podtelezhnikov at 2023-03-03T22:10:50-05:00
[pfr] Shorten de-referencing.
* src/pfr/pfrobjs.c (pfr_face_done, pfr_face_init): Use closer `memory`.
* src/pfr/pfrgload.c (pfr_glyph_load_compound): Remove `loader`.
-
7ae20e55
by Alexei Podtelezhnikov at 2023-03-03T22:41:09-05:00
* src/sfnt/sfobjs.c (sfnt_load_face): Shorten de-referencing.
-
29578f75
by Alexei Podtelezhnikov at 2023-03-04T13:39:27+00:00
* src/cff/cffobjs.c (cff_size_init): Synonymous change.
-
a2b8937d
by Alexei Podtelezhnikov at 2023-03-04T14:00:52-05:00
[cff] Clean up memory management in the old engine.
* src/cff/cffparse.c (finalize_t2_strings): Fix NULL-dereferencing
in the out-of-memory situation, use `FT_FREE`.
(cff_parser_run): Use FreeType memory allocation macros and avoid
uninitialized pointers.
-
51c17054
by Alexei Podtelezhnikov at 2023-03-04T23:32:50-05:00
* src/cff/cffparse.c (cff_parser_run): Fix variable type.
-
de600220
by Alexei Podtelezhnikov at 2023-03-04T23:49:49-05:00
[cff] Clean up CharString number encoding.
* src/cff/cffparser.c (cff_parser_run): Work with signed numbers.
-
c4b5127b
by Alexei Podtelezhnikov at 2023-03-05T00:31:58-05:00
* src/cff/cffparse.c (cff_parser_run): Thinko.
-
70946f6d
by Alexei Podtelezhnikov at 2023-03-05T16:08:14-05:00
* builds/windows/vc2010/freetype.vcxproj: Suppress C4267 on _WIN64.
This usually comes from `strlen` returning 64-bit `size_t`, which
we often assign to 32-bit `FT_ULong` on Windows-64 (LLP64).
-
fc01e7dd
by Alexei Podtelezhnikov at 2023-03-05T22:05:24-05:00
Fix a couple of MSVC warnings.
* src/base/ftcalc.c (FT_MulAddFix): Add cast.
* src/sfnt/ttcolr.c (tt_face_get_colorline_stops, read_paint): Ditto.
-
b2a94906
by David PROVENT at 2023-03-06T14:32:02+01:00
Added information about the zlib version update in the changelog
-
de94e2cb
by Alexei Podtelezhnikov at 2023-03-06T16:23:14-05:00
[truetype] Simplify memory management.
Instead of using `Update_Max`, switch to regular FreeType memory
allocation macros, stop pre-allocating the glyph instruction arrays.
* src/truetype/ttgload.c (TT_Load_Simple_Glyph,
TT_Process_Composite_Glyph): Switch to regular memory allocation.
* src/truetype/ttinterp.c (Update_Max): Removed.
(TT_Load_Context): Reallocate stack and free old instructions.
(Modify_CVT_Check, Ins_WS): Switch to regular memory allocation.
* src/truetype/ttinterp.h (Update_Max): Removed.