src/bdf/bdflib.c

Branch


Log

Author Commit Date CI Message
Werner Lemberg f1be7392 2025-07-01T18:00:12 More signedness fixes. As reported by clang 19. * src/autofit/afadjust.c (add_substitute): Make first argument unsigned. Update all callers. Other minor signedness fixes. (af_reverse_character_map_new): Minor signedness fixes. * src/autofit/afgsub.c (af_hash_insert): Minor signedness fixes. * src/autofit/aflatin.c (af_glyph_hints_apply_vertical_separation_adjustments): Make third argument unsigned. Update all callers. Other minor signedness fixes. (af_latin_hints_apply): Minor signedness fixes. * src/bdf/bdflib.c (bdf_parse_bitmap_): Minor signedness fix. * src/truetype/ttobjs.c (tt_size_init_bytecode): Minor signedness fix.
Werner Lemberg 8d82c9fa 2025-07-01T17:08:37 */*: Fix trivial signedness issues with format strings in trace messages. As reported with clang 19's `-Wformat` option.
Werner Lemberg 15b7e8c3 2025-05-14T10:20:04 Whitespace, formatting, minor spelling fix.
Alexei Podtelezhnikov 6b6b643f 2025-04-12T15:06:59 * src/bdf/bdflib.c (hdigits): Removed. Fixes #1325.
Alexei Podtelezhnikov 82090e67 2025-03-26T00:26:55 [bdf] Clarify callback flow. * src/bdf/bdflib.c (bdf_line_func_t_): Modify callback prototype. (bdf_parse_*_): Updated. (bdf_load_font, bdf_readstream_): Delay callback initiation.
Alexei Podtelezhnikov 7ede7324 2025-03-25T22:03:23 * src/bdf/bdflib.c (bdf_readstream_): Relocate.
Alexei Podtelezhnikov 56b53a86 2025-03-25T21:23:46 * src/bdf/bdflib.c (bdf_is_atom_): Do not check tabs.
Alexei Podtelezhnikov 7ddb53fc 2025-03-25T21:22:52 * src/bdf/bdflib.c (_bdf_strncmp): Macro removed, callers updated.
Alexei Podtelezhnikov b1f47850 2025-01-28T22:49:21 * src/bdf/bdflib.c (bdf_parse_start_): Move setup of properties.
Alexei Podtelezhnikov 00a1567a 2025-01-24T22:36:56 [bdf] Treat all comments uniformly. * src/bdf/bdflib.c (bdf_parse_start_): Reject fonts with initial COMMENTs. (bdf_parse_properties_): Skip COMMENTs so that... (bdf_add_property_): Do not make exception for COMMENT. (bdf_parse_glyphs_, bdf_add_comments): Updated.
Alexei Podtelezhnikov fdae51cc 2025-01-24T22:03:00 * src/bdf/bdflib.c (BDF_SWIDTH_ADJ_): Remove clashing flag and update.
Alexei Podtelezhnikov bfe793cc 2025-01-22T21:17:57 * src/bdf/bdflib.c (bdf_atous_): Remove unnecessary checks.
Alexei Podtelezhnikov 40a74585 2025-01-22T21:05:22 * src/bdf/bdflib.c (bdf_ato{i.ul.s.us}_]): Remove uncecessary checks.
Alexei Podtelezhnikov 56131e42 2025-01-22T20:47:56 [bdf] Postpone font default char handling. * src/bdf/bdflib.c (bdf_parse_start_, bdf_add_property_): Delay handling of the default char until... * src/bdf/bdfdrivr.c (BDF_Face_Init): ... handles all other properties.
Alexei Podtelezhnikov 8bae8706 2025-01-22T20:46:43 [bdf] Postpone font spacing handling. * src/bdf/bdf.h (bdf_font_t): Remove `monowidth`. * src/bdf/bdflib.c (bdf_parse_start_, bdf_add_property_): Delay handling of the font spacing until... * src/bdf/bdfdrivr.c (BDF_Face_Init): ... handles all other properties.
Alexei Podtelezhnikov c0a7839e 2025-01-22T19:11:47 [bdf] Postpone font ascent and descent handling. * src/bdf/bdflib.c (bdf_parse_start_, bdf_add_property_): Delay handling of the font ascent and descent until... * src/bdf/bdfdrivr.c (BDF_Face_Init): ... handles all other properties.
Alexei Podtelezhnikov c33da8fb 2025-01-22T16:59:44 * src/bdf/bdflib.c (bdf_parse_start_): Relax the header order. We now check that the header is complete in no specific order.
Alexei Podtelezhnikov b9e09e33 2025-01-19T12:35:13 * src/bdf/bdflib.c (bdf_parse_glyphs_): Fix tracing.
Alexei Podtelezhnikov 01c22b36 2025-01-19T11:19:10 [bdf] Tokenize input instead of listing. Instead of cumbersome field list mamangement, we will tokenize input using custom `bdf_strtok_`. * src/bdf/bdflib.c (bdf_list_t_, bdf_list_init_, bdf_list_ensure_, bdf_list_shift_, bdf_list_join_, bdf_list_split_, bdf_set_default_spacing_): Removed. (bdf_strtok_): New function which NUL-terminates the first token at the delimiter position and returns the next token that follows consequtive delimiters. (bdf_parse_*_, bdf_load_font): Updated. * docs/CHANGES: Claim overall 75% performance improvement.
Alexei Podtelezhnikov ad7dce77 2025-01-17T20:54:14 * src/bdf/bdflib.c (bdf_parse_start_): Prevent another STARTPROPERTIES. Only one STARTPROPERTIES was permitted in the old flow preventing leaks and overflows. See https://issues.oss-fuzz.com/issues/389968131 https://issues.oss-fuzz.com/issues/390464875
Alexei Podtelezhnikov e3a3b39d 2025-01-16T23:25:08 * src/bdf/bdflib.c (bdf_parse_start_): Do not overwrite flags.
Alexei Podtelezhnikov d4631a2e 2025-01-16T20:54:33 * src/bdf/bdflib.c (bdf_readstream_): Skip all control characters. This agrees with specifications and makes the code a lot simpler.
Alexei Podtelezhnikov 02953326 2025-01-16T03:47:14 * src/bdf/bdflib.c (bdf_parse_start_): Reserve space for artificial properties.
Alexei Podtelezhnikov ae11e18c 2025-01-15T15:50:12 * src/bdf/bdflib.c (bdf_add_property_): Add extra protection. See https://issues.oss-fuzz.com/issues/389972472 https://issues.oss-fuzz.com/issues/389968131
Alexei Podtelezhnikov a0d86e56 2025-01-14T22:58:04 * src/bdf/bdflib.c: Clean up.
Alexei Podtelezhnikov a3c68e3b 2025-01-14T22:32:46 [bdf] Use flags instead of options. * src/bdf/bdf.h (bdf_options_t): Removed. (BDF_KEEP_COMMENTS, BDF_KEEP_UNENCODED, BDF_CORRECT_METRICS): Updated to avoid collisions with the other parsing flags. * src/bdf/bdfdrivr.c (BDF_Face_Init): Use default flags explicitly. * src/bdf/bdflib.c (bdf_load_font): Use flags as an argument to initialize the parser. (bdf_set_fedault_spacing_): Default to BDF_PROPORTIONAL explicitly. (bdf_parse_*_): Updated.
Alexei Podtelezhnikov a05c2210 2025-01-14T21:11:33 [bdf] Adjust parsing flow and CHARS handling. * src/bdf/bdflib.c (bdf_readstream_): Remove CHARS exception. (bdf_parse_glyphs_): Move glyphs allocation... (bdf_parse_properties_): and missing ascent and descent handling... (bdf_parse_start_): ...to here under CHARS.
Alexei Podtelezhnikov 0864367a 2025-01-14T18:39:50 * src/bdf/bdflib.c (bdf_readstream_): Tweak variables and loop design.
Alexei Podtelezhnikov ee1310ab 2025-01-13T17:19:31 * src/bdf/bdflib.c (bdf_parse_glyphs_): Free unused glyph_name. See https://issues.oss-fuzz.com/issues/389330334.
Alexei Podtelezhnikov f2199967 2025-01-13T03:48:28 * src/bdf/bdflib.c (bdf_parse_glyphs_): Store glyph as soon as possible.
Alexei Podtelezhnikov aab40d5c 2025-01-12T00:24:42 * src/bdf/bdflib.c (bdf_parse_glyphs_): Avoid possible leak.
Alexei Podtelezhnikov bbc445e1 2025-01-11T23: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.
Alexei Podtelezhnikov 4433c7b7 2025-01-11T18:54:04 * src/bdf/bdflib.c (a2i): Formatting.
Alexei Podtelezhnikov ff5872b4 2025-01-10T22:55:13 * src/bdf/bdflib.c (bdf_parse_*_): Minor improvements.
Alexei Podtelezhnikov cf451e5f 2025-01-10T22:31:07 * src/bdf/bdf.h (bdf_font_t): Correct `internal` type. * src/bdf/bdflib.c (*): Update users.
Alexei Podtelezhnikov 1f57020f 2025-01-10T03:23:41 * src/bdf/bdflib.c (bdf_parse_start_): Fix tracing labels.
Alexei Podtelezhnikov b25265fe 2024-05-19T22: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.
Werner Lemberg 80a507a6 2023-05-23T13:13:56 Replace `sprintf` with `snprintf`. Fixes #1233. * include/freetype/config/ftstdlib.h (ft_sprintf): Replace with... (ft_snprintf): This new macro. * src/autofit/afhints.c (af_print_idx): Add argument to pass the buffer size. (af_glyph_hints_dump_points, af_glyph_hints_dump_segments, af_glyph_hints_dump_edges): Updated. * src/bdf/bdflib.c (BUFSIZE): New macro. (bdf_parse_properties_, bdf_parse_start_): Use `ft_snprintf`. * src/tools/ftrandom/ftrandom.c (do_test): Use `snprintf`.
Alexei Podtelezhnikov 7ab541a2 2023-04-26T23:15:24 [bdf] Clean up the atom property parsing. * src/bdflib.c (bdf_is_atom_): Refactor code with fewer checks. (bdf_list_join_): Return NULL. (bdf_add_comment_): Use const argument. (bdf_get_property): Ditto, ditto, make the function static. * src/bdf.h (bdf_get_property): Remove prototype.
Werner Lemberg 37bc7c26 2023-02-07T07:37:07 Avoid reserved identifiers that are globally defined. This is mandated by the C99 standard, and clang 15 produces zillions of warnings otherwise. * devel/ftoption.h, include/freetype/config/ftoption.h, include/freetype/internal/ftmemory.h, src/autofit/afhints.h, src/autofit/afmodule.c, src/autofit/aftypes.h, src/base/ftadvanc.c, src/base/ftdbgmem.c, src/base/ftstream.c, src/bdf/bdflib.c, src/truetype/ttinterp.c: Replace identifiers of the form `_foo` with `foo_`.
Alexei Podtelezhnikov d118bf8e 2022-01-15T23:09:53 [bdf,type1] Avoid unnecessary hash zeroing. * src/bdf/bdflib.c (_bdf_parse_start): Use `FT_QALLOC`. * src/type1/t1load.c (parse_subrs): Use `FT_QNEW`.
Alexei Podtelezhnikov 904ad212 2022-01-13T23:38:56 * src/bdf/bdflib.c (_bdf_parse_glyphs): Remove redundant assignment.
Alexander Borsuk 4f357118 2021-12-17T11:22:09 Clang-Tidy warning fixes. * src/base/ftobjs.c (FT_Get_Paint): Operator has equivalent nested operands. * src/bdf/bdflib.c (_bdf_add_property): Value stored to `fp` is never read. * src/sdf/ftbsdf.c (bsdf_init_distance_map): Value stored to `pixel` is never read. * src/sdf/ftsdf.c (split_sdf_shape): Value stored to `error` is never read.
Ben Wagner bad92be9 2021-12-09T17:06:28 [bdf] Fix use of uninitialized value. In _bdf_readstream if the data contained no newline then the buffer would continue to grow and uninitialized data read until either the uninitialized data contained a newline or the buffer reached its maxiumum size. The assumption was that the line was always too long and the buffer had been filled, however this case can also happen when there is not enough data to fill the buffer. Correct this by properly setting the cursor to the end of the available data, which may be different from the end of the buffer. This may still result in one extra allocation, but only on malformed fonts. * src/bdf/bdflib.c (_bfd_readstream): Correctly update cursor. Remove unread set of `avail`. Bug: https://lists.nongnu.org/archive/html/freetype-devel/2021-12/msg00001.html
Werner Lemberg 8ef8072b 2021-10-19T22:59:46 [bdf, cid, pfr, winfonts] Improve rejection of other font formats. This is mainly for better diagnostics of malformed fonts. * src/bdf/bdflib.c (_bfd_readstream): Stop font format testing if the first input line is too long or doesn't end with `\r` or `\n`. * src/cid/cidparse.c (cid_parser_new): Don't handle too short input as an error but as an unknown format. * src/pfr/pfrobjs.c (pfr_face_init): Ditto. * src/winfonts/winfnt.c (fnt_font_load, fnt_face_get_dll_font): Ditto.
Alexei Podtelezhnikov 30ca63d4 2021-10-16T23:02:47 [bdf] Fix up user properties. Fallout reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=40027 * src/bdf/bdflib.c (_bdf_add_property): Cosmetic NULL. (bdf_create_property): Limit allocations to customary signed FT_Long and NULL-initialize unused storage. (bdf_free_font): Do not free unused storage.
Alexei Podtelezhnikov a69320a9 2021-09-24T22:06:44 [bdf] Simplify comment collection or lack thereof. BDF comments are neither actually collected nor retrieved. There is no need to be fancy with delimiters. * src/bdf/bdflib.c (_add_bdf_comment): Delimit comments with zeros... (bdf_load_font): ...and do not null-terminate comments additionally. (_bdf_parse_glyphs): Check if comments are kept, which they are not. (_bdf_parse_start): Minor clean up.
Alexei Podtelezhnikov a29e0200 2021-09-23T23:10:26 Use NULL for pointers only. * src/bdf/bdflib.c (*): Code changes. * include/freetype/freetype.h: Comments only. * src/cff/cffload.c, src/cff/cffobjs.c: Ditto. * src/winfonts/winfnt.c: Ditto.
Alexei Podtelezhnikov 90b14882 2021-09-22T20:20:04 [bdf, pcf] Minor optimization. * src/pcf/pcfread.c (pcf_load_font): Do not call `FT_MulDiv` for a small job. * src/bdf/bdfdrivr.c (BDF_Face_Init): Ditto. * src/bdf/bdflib.c (_bdf_parse_glyphs): Fix a comment.
Alexei Podtelezhnikov 892e7ead 2021-09-21T14:39:21 * src/bdf/bdflib.c (_bdf_parse_{start,glyphs}): Use appropriate scanner.
Alexei Podtelezhnikov 7bf655b2 2021-09-03T11:31:41 * src/bdf/bdflib.c (_bdf_parse_start): Keep parser memory.
Alexei Podtelezhnikov 0a6f0f8f 2021-09-02T22:52:21 * src/bdf/bdflib.c (bdf_load_font): Remove memory shuffling.
Alexei Podtelezhnikov a81cf5aa 2021-09-02T22:10:57 Cosmetic zeros.
Alexei Podtelezhnikov 2f62d8e0 2021-05-07T09:33:41 * src/bdf/bdflib.c (_bdf_list_ensure): Tweak allocation macro.
Alexei Podtelezhnikov ec95f9c9 2021-05-02T18:30:22 [bdf,pcf] Avoid memory zeroing (contd.). * src/bdf/bdflib.c (bdf_create_property, _bdf_add_comment, _bdf_add_property, bdf_load_font): Tweak allocation macros. * src/pcf/pcfread.c (pcf_get_properties, pcf_get_metrics): Ditto.
Alexei Podtelezhnikov c2d28314 2021-04-25T23:33:15 [bdf,pcf] Avoid some memory zeroing. * src/pcf/pcfread.c (pcf_read_TOC, pcf_get_properties, pcf_load_font): Tweak memory macros. * src/bdf/bdfdrivr.c (BDF_Face_Init): Ditto. * src/bdf/bdflib.c (_bdf_readstreami, bdf_create_property, _bdf_parse_glyphs, _bdf_parse_start): Ditto. (_bdf_add_property): Do not handle zero size.
Alexei Podtelezhnikov 70fd20e6 2021-02-12T19:28:05 Decorate qsort callbacks with cdecl. * include/freetype/internal/compiler-macros.h (FT_COMPARE_DEF): Add new macro. * src/base/ftrfork.c, src/bdf/bdflib.c, src/gxvalid/gxvcommn.c, src/psaux/afmparse.c, src/psnames/psmodule.c, src/type1/t1afm.c, src/sfnt/sfwoff.c, src/sfnt/sfwoff2.c: Update qsort callbacks. Fixes #1026 when compiling FreeType with an unusual calling convention while the C library qsort still expects cdecl.
Werner Lemberg 92db149e 2020-12-02T07:54:21 * src/bdf/bdflib.c: Fix `-Wformat` warning.
Priyesh Kumar 6d9e6b21 2020-08-28T09:56:38 * src/*: Fix `-Wformat` warnings.
Werner Lemberg 16586859 2020-06-13T21: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'.
David Turner e1339133 2020-06-08T13: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.
Alexei Podtelezhnikov afaf3f1d 2019-06-10T22:27:39 [bdf,pcf] Use `const' for string literals. * src/bdf/bdf.h (bdf_property_t): Updated `name'. * src/bdf/bdflib.c (_bdf_list_split,bdf_create_property, _bdf_add_property,_bdf_ato*): Updated. * src/bdf/bdfdrivr.c (bdf_interpret_style): Updated. * src/pcf/pcfread.c (pcf_intrpret_style): Ditto.
Werner Lemberg f1b6183f 2018-12-04T11:51:15 [bdf] Ignore data after `ENDFONT'. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10798 * src/bdf/bdflib.c (_bdf_parse_end): New function. (_bdf_parse_glyphs): Switch to `_bdf_parse_end' after `ENDFONT' has been encountered.
Alexei Podtelezhnikov efa2a3ba 2018-08-15T23:49:07 Revert BDF copyright years.
Alexei Podtelezhnikov af9662e6 2018-08-15T22:58:11 Ouch. BDF copyright year.
Alexei Podtelezhnikov 923fcbcd 2018-08-15T22:50:06 [bdf] Don't track duplicate encodings. There is no harm except some umbiguity in broken fonts with duplicate encodings. * src/bdf/bdflib.c (_bdf_parse_glyphs): Remove duplicate tracking. (_bdf_parse_t): Remove large `have' bitfield.
Werner Lemberg a0dd16fb 2018-08-15T18: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.
Alexei Podtelezhnikov e001a17d 2018-08-14T07:10:57 [bdf] Remove unused fields. * src/bdf/bdf.h (bdf_font_t): Remove `nmod', `umod', and `modified', which were set but never used. * src/bdf/bdflib.c (_bdf_parse_{glyphs,properties}, bdf_load_font): Updated accordingly.
Alexei Podtelezhnikov ac2ea865 2018-08-13T21:33:24 [bdf] Remove unused overflow storage. * src/bdf/bdf.h (bdf_glyphlist_t): Remove this type. (bdf_font_t): Remove `overflow' field. * src/bdf/bdflib.c (bdf_free_font): Remove `overflow' freeing.
Alexei Podtelezhnikov f5fe6e2f 2018-08-13T09:01:53 [bdf] Use unsigned types. * src/bdf/bdf.h (bdf_glyph_t): Unsign `encoding'. (bdf_font_t): Unsign `default_char'. * src/bdf/bdfdrivr.h (BDF_encoding_el): Unsign `enc'. * src/bdf/bdflib.c (_bdf_add_property, _bdf_parse_glyphs, _bdf_parse_start): Updated accordingly. * src/bdf/bdfdrivr.c (bdf_cmap_char_{index,next}): Ditto.
Armin Hasitzka 0f6be064 2018-06-17T20:27:42 [bdf] Fix underflow of an unsigned value. bdflib.c:1562 could be reached with `font->glyphs_used == 0'. That caused an underflow of the unsigned value which results in undefined behaviour. * src/bdf/bdflib.c (src/bdf/bdflib.c): Bail out earlier than before if the `ENCODING' keyword cannot be found.
Werner Lemberg 9ac9060d 2018-06-03T09: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.
Werner Lemberg 068a7a03 2017-12-18T20:34:05 * src/*/*: Only use `ft_' and `FT_' variants of stdc library stuff.
Werner Lemberg 47a03e9b 2017-06-02T09:06:36 [bdf] Fix integer scanning routines. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2029 * src/bdf/bdflib.c (_bdf_atoul, _bdf_atol, _bdf_atous, _bdf_atos): Stop scanning if result would overflow.
Werner Lemberg 4441f7b2 2016-12-26T17:08:17 Replace `foo == NULL' and `foo != NULL' with `!foo' and `foo', resp. Other minor formatting.
Werner Lemberg 5d664b6d 2016-12-17T20:47:42 Use FT_SET_ERROR where useful. Other minor code formatting.
Werner Lemberg 2ecf89b4 2016-09-28T19:06:21 */*: s/FT_MEM_ZERO/FT_ZERO/ where appropriate.
Werner Lemberg b6b26f45 2016-06-09T06:53:48 [bdf] Check number of properties (#48166). * src/bdf/bdflib.c (_bdf_parse_start): Implement.
Werner Lemberg 758587db 2016-01-12T22:20:06 Don't use macro names that start with `_[A-Z]' [1/3]. Such macro names are reserved for both C and C++. * src/bdf/bdflib.c: Replace macros of the form `_BDF_XXX' with `BDF_XXX_'.
Werner Lemberg 7ce6c43c 2015-12-22T05:39:58 [base] Make hash interface symmetric. Use `num' and `str' infixes everywhere. * src/base/fthash.c (ft_hash_init): Renamed to... (hash_init): ... This. (ft_hash_str_init, ft_hash_num_init): New functions. (ft_hash_free): Renamed to... (ft_hash_str_free): ... This. * include/freetype/internal/fthash.h: Updated. * src/bdf/bdflib.c, src/type1/t1load.c, src/type1/t1objs.c: Updated.
Werner Lemberg 76e79ec9 2015-12-20T09:03:15 [base, bdf] Don't expose `FT_Hashnode' in hash functions. * src/base/fthash.c (hash_lookup, ft_hash_str_lookup, ft_hash_num_lookup): Return pointer to `size_t' instead of `FT_Hashnode'. * include/freetype/internal/fthash.h: Updated. * src/bdf/bdflib.c (bdf_get_property, _bdf_add_property, bdf_get_font_property): Updated.
Werner Lemberg ad306eaa 2015-12-20T08:33:21 [base, bdf] Add number hashing. * src/base/fthash.c (hash_num_lookup, hash_num_compare): New functions. (ft_hash_init): Add argument to select between number and string hashing. (ft_hash_num_insert, ft_hash_num_lookup): New functions. * include/freetype/internal/fthash.h: Updated. * src/bdf/bdflib.c (_bdf_parse_start): Updated.
Werner Lemberg 609546c4 2015-12-20T07:17:29 [base, bdf] Use a union as a hash key. We want to support both an integer and a string key later on. * include/freetype/internal/fthash.h (FT_Hashkey): New union. (FT_HashnodeRec): Updated. (ft_hash_insert, ft_hash_lookup): Renamed to ... (ft_hash_str_insert, ft_hash_str_lookup): ... this. * src/base/fthash.c (hash_bucket): Updated. (ft_hash_insert, ft_hash_lookup): Renamed to ... (hash_insert, hash_lookup): ... this. (ft_hash_str_insert, ft_hash_str_lookup): New wrapper functions. * src/bdf/bdflib.c: Updated.
Werner Lemberg 31343565 2015-12-19T17:02:13 [bdf] Use new hash functions. * src/bdf/bdf.h: Include FT_INTERNAL_HASH_H. (hashnode, hashtable): Removed. (bdf_font_t): Use `FT_HashRec' type for `proptbl'. * src/bdf/bdflib.c: Remove all hash functions. Update code for new hash structure and function names.
Ben Wagner a512b0fe 2015-12-14T09:19:52 [bdf] Remove dead code (#46625). The BDF specification only allows decimal numbers, no octal or hexidecimal decoding is needed. * src/bdf/bdflib.c (_bdf_atoul, _bdf_atol, _bdf_atous, _bdf_atos): Remove unused code and parameters. Update all callers. (odigits): Remove.
Werner Lemberg 4a15013a 2015-11-25T07:53:49 * src/bdf/bdflib.c (bdf_load_font): Fix small memory leak (#46480). (_bdf_parse_glyphs): Always reset `p->glyph_name' after moving its contents.
Werner Lemberg 94cacac5 2015-11-15T04:45:42 * src/bdf/bdflib.c (bdf_load_font): Fix small memory leak (#46439).
Werner Lemberg b185747d 2015-10-17T14:21:41 [bdf] Prevent memory leak (#46217). * src/bdf/bdflib.c (_bdf_parse_glyphs) <STARTCHAR>: Check _BDF_GLYPH_BITS.
Werner Lemberg 797ca5ac 2015-10-17T11:57:16 Typo.
Werner Lemberg e1ca18d4 2015-10-17T11:51:27 [bdf] Use stream size to adjust number of glyphs. * src/bdf/bdflib.c (ACMSG17): New message macro. (_bdf_parse_t): Add member `size'. (bdf_load_font): Set `size'. (_bdf_parse_glyphs): Adjust `cnt' if necessary.
Bungeman 65d89804 2015-10-15T23:50:16 [bdf] Fix memory leak (#46213). * src/bdf/bdflib.c (bdf_load_font): Always go to label `Fail' in case of error.
Alexei Podtelezhnikov 41bfbadc 2015-06-24T23:57:19 * src/bdf/bdflib.c (_bdf_parse_start): Disallow 0 bpp.
Alexei Podtelezhnikov 4308b7b1 2015-06-24T23:31:17 * src/bdf/bdflib.c (_bdf_parse_start): Simplify bpp parsing.
Alexei Podtelezhnikov adb08efc 2015-04-11T23:54:19 [bdf,pcf,truetype] NULL.
Werner Lemberg 3c374c8c 2015-02-22T09:16:53 [bdf] Signedness fixes. * src/bdf/bdf.h, src/bdf/bdfdrivr.c, src/bdf/bdfdrivr.h, src/bdf/bdflib.c: Apply.
Werner Lemberg b13945a9 2015-02-22T09:15:47 * src/bdf/bdflib.c (_bdf_atous): New function. (_bdf_parse_glyphs, _bdf_parse_start): Use it.
Werner Lemberg 0098d550 2014-12-07T11:03:57 Uppercase all hex digits for orthogonality.
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 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.
Sean McBride b24e8d33 2014-03-06T14:54:22 Remove more clang analyzer warnings. * src/bdf/bdflib.c (_bdf_readstream), src/truetype/ttgload.c (TT_Load_Glyph): Remove dead stores.