src/hb-ot-name-table.hh

Branch


Log

Author Commit Date CI Message
Matthias Clasen f89fa6dc 2023-01-27T23:54:34 Move name table to src/OT/name
Behdad Esfahbod 4e7c8039 2023-01-11T12:38:26 [subset-plan] Simplify name_table_overrides allocation
Qunxin Liu 1eb5445e 2023-01-06T15:19:16 [subset] Fix issue in hb_subset_input_override_name_table() If a nameRecord with provided name_id/platform_id/encoding_id/lang_id is not retained after subsetting, create it and insert it to the name table. So we need to check against retained name_records rather than name_record in the original name table.
Behdad Esfahbod 92e5933e 2022-12-31T12:35:30 [vector] A couple more exact-size allocations
Qunxin Liu 8eadb836 2022-11-10T10:33:26 [subset] Update hb_subset_input_override_name_table API Override the name string for the NameRecord identified by name_id, platform_id, encoding_id and language_ids specified by the user. If a record with specified name_id does not exist, this API will create a new NameRecord with provided info and insert it to the name table.
Behdad Esfahbod 59c45f6d 2022-11-22T12:54:50 Use hb_memcpy instead of memcpy consistently
Behdad Esfahbod f6076890 2022-11-14T16:06:39 Hide all mentions of name_table_overrides behind EXPERIMENTAL_API Fixes https://github.com/harfbuzz/harfbuzz/issues/3872
Behdad Esfahbod c158b626 2022-11-08T14:15:56 [name] Simplify buffer-length calculation
Behdad Esfahbod 55edf59d 2022-11-08T14:53:27 [name] Typo
Behdad Esfahbod 27c8bbcb 2022-11-08T14:48:38 Revert "[name] Simplify buffer-length calculation" This reverts commit d70595657e8d56b52d5714d082092d8eb104093e.
Behdad Esfahbod d7059565 2022-11-08T14:15:56 [name] Simplify buffer-length calculation
Qunxin Liu 6314aa7d 2022-10-28T10:44:48 [subset] add an experimental API that can override name strings for specified name_id
Behdad Esfahbod b57ea3b0 2022-08-05T14:29:27 Revert "[iter] Use && in uses of is_source_of" This reverts commit ccbba667a9bdc096f0053d5e3ee951a8b6298e8a.
Behdad Esfahbod ccbba667 2022-08-05T11:51:51 [iter] Use && in uses of is_source_of
Behdad Esfahbod f7f6d278 2022-07-17T22:15:42 Add hb_language_matches() New API: + hb_language_matches()
Behdad Esfahbod b39b5f2f 2022-06-03T04:10:28 [name] Implement approximate language matching Very rudimentary. Fixes https://github.com/harfbuzz/harfbuzz/issues/3354
Behdad Esfahbod ae9fc7f5 2022-01-20T12:37:21 Clean accelerators a bit more
Behdad Esfahbod ac1bb3e3 2022-01-20T11:47:17 [machinery] Move accelerators to constructor/destructor
Behdad Esfahbod e062376e 2022-01-19T17:09:34 [machinery] Make accelerator lazy-loader call Xinit/Xfini Instead of init/fini. To isolate those functions. To be turned into constructor/destructors, ideally one per commit (after some SFINAE foo.)
Behdad Esfahbod 8a69e006 2022-01-13T16:17:34 [meta] Use std::addressof() instead of hb_addressof()
Garret Rieger 46d4a5e6 2021-07-29T15:07:13 [subset] Convert subset plan to use a flags bit set.
Behdad Esfahbod 2337f0d0 2021-07-08T10:58:50 Internally use hb_malloc/.../hb_free instead of malloc/.../free Redefining those stock names as macros was conflicting with gcc 10 headers. Fixes https://github.com/harfbuzz/harfbuzz/issues/3044
Behdad Esfahbod ad28f973 2021-03-31T12:49:14 Rename offset types to be explicit about their size Add Offset16To<>, Offset24To<>, and Offset32To<> for most use-cases.
Garret Rieger 73ed59f7 2021-03-17T15:53:10 [subset] store errors in the serializer as a flag set. Make check_assign/check_equal specify the type of error to set.
Garret Rieger 4ba8e3c6 2020-07-29T12:33:42 [ENOMEM] Fix failure to check calloc return. Fixes https://oss-fuzz.com/testcase-detail/6246465148813312.
Ebrahim Byagowi 08428a15 2020-04-24T23:45:17 minor, spacing
Ebrahim Byagowi 2dda6dd7 2020-04-20T14:12:45 minor, tweak spacing turn 8 spaces to tab, add space before Null/Crap
Ebrahim Byagowi ba22df36 2020-03-10T10:42:20 minor makes search for sanitize calls easier for me
Ebrahim Byagowi 07acd1a0 2020-03-08T23:39:24 [subset] Rename src_base args to base to match sanitize methods So it will become easier to follow that serialize methods signatures should match with their sanitize methods counterparts.
ariza 188a0a47 2020-03-07T11:02:36 removed default base; replaced w/ bias if required
ariza 4ca8e0d9 2020-02-19T12:52:18 re-implement Tail; rewrote name table with it
Ebrahim Byagowi b2a68ed5 2020-02-01T23:16:26 [name] Minor, use subtraction instead ternary operator Guess ternary was a bit more legible, apparently however we agreed to use subtraction, https://github.com/harfbuzz/harfbuzz/pull/2139#discussion_r372582005
Qunxin Liu 490ef1cc 2020-01-28T15:57:33 [subset] Fix namerecord ordering This will fix inconsistency with fontTools. Also according to the spec, namerecords must be sorted first by platform ID, then by platform-specific ID, then by language ID, and then by name ID.
Qunxin Liu 36a5c042 2020-01-21T13:37:28 [subset] Add "--name-languages" and "--name-legacy" options Make name table subsetting consistent with fontTools
Ebrahim Byagowi e171beeb 2020-01-24T19:51:21 Revert "[subset] Add "--name-languages" and "--name-legacy" options" Causes tests failures, please reapply when tests are fixed, thanks. This reverts commit fd85818b5b85fb0ad2db71c60e94ca0689d38bca.
Qunxin Liu fd85818b 2020-01-21T13:37:28 [subset] Add "--name-languages" and "--name-legacy" options Make name table subsetting consistent with fontTools
Behdad Esfahbod bd55d4b4 2019-12-06T03:35:24 [algs] Streamline bsearch() API more towards hb_array_t::bsearch_impl() Preparing to merge the two finally!
Ebrahim Byagowi 486754a8 2019-09-23T23:48:08 [serialize] Extract iterable copy, copy_all
Ebrahim Byagowi cbc0646a 2019-09-24T12:08:12 Minor, normalize for each calls
Ebrahim Byagowi 6e42a418 2019-09-21T16:25:54 Minor, turn more of hb_apply to for each
Ebrahim Byagowi 6e4736a3 2019-09-14T10:38:52 [name] Undef entry_{index,score} to avoid collision in amalgam builds
Ebrahim Byagowi a0b4ac4d 2019-08-24T17:57:14 Turn 8 spaces to tab across the project According to the current code style of the project
Behdad Esfahbod 37f8ebff 2019-06-18T14:33:49 [config] Fixup for AAT ltag table access Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod 92604416 2019-05-31T14:34:34 [serialize] Pass offset to serialize_copy()
Qunxin Liu e1a5ce6a 2019-05-24T10:58:52 Fix fuzzer crash testcase Add a check for stringOffSet(uint16) overflow, return early if overflow happens
Behdad Esfahbod 78d35f0e 2019-05-15T18:15:05 Reduce captures of lambdas
Behdad Esfahbod 1fc07721 2019-05-11T01:24:23 [config] HB_NO_OT_NAME_LANGUAGE AAT
Behdad Esfahbod 227d85e1 2019-05-10T23:15:58 Minor
Behdad Esfahbod ed972d5d 2019-05-09T16:58:28 [iter] Rewrite test functions Notably, add hb_is_source_of(,) and hb_is_sink_of(,) to replace most uses of hb_is_iterator_of(,).
Behdad Esfahbod ceda1f03 2019-05-09T15:19:42 Fix compile NameRecord is not copy-constructible, so should be iterator of const-reference.
Behdad Esfahbod 503748d8 2019-05-08T12:45:02 [name] Sanitize records for reals Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14641
Behdad Esfahbod 7c037bd2 2019-05-07T13:37:43 [name] Clean up some more
Behdad Esfahbod f982b9d9 2019-05-07T13:29:01 [name] Clean up serialize() API
Behdad Esfahbod 59ee61fd 2019-05-07T13:26:15 [name] Use iterators more
Behdad Esfahbod 0987c420 2019-05-07T11:01:02 [name] Remove dead code
Behdad Esfahbod 5ac4ab68 2019-05-02T16:29:07 [subset] fix for name table serializing with new serializer machinery
Behdad Esfahbod c548fced 2019-05-02T16:29:07 [WIP] [name] Port to fancy serializer machinery
Behdad Esfahbod 0d5fd168 2019-05-03T10:37:32 Revert "[WIP] [name] Port to fancy serializer machinery" This reverts commit c7f366fbbb208d0a9103ac4ee4ac00ff726c31e4. Don't know how it got to master!
Behdad Esfahbod c7f366fb 2019-05-02T16:29:07 [WIP] [name] Port to fancy serializer machinery
Behdad Esfahbod 8855af38 2019-05-02T16:26:06 [name] Add NameRecord::copy()
Behdad Esfahbod 097bb3f0 2019-05-02T16:25:00 [name] Minor changes
Behdad Esfahbod 0f1a6ce8 2019-05-02T15:03:41 [name] Fix format of susbetted table to 0
Behdad Esfahbod 87810fc9 2019-05-02T14:45:57 [name] Use variable forwarding to simplify sanitize()
Behdad Esfahbod bf91b418 2019-05-02T14:42:37 [name]
Ebrahim Byagowi 92588782 2019-04-30T13:05:10 Remove space between right angle brackets now that we have C++11 (#1689)
Qunxin Liu 8c8922a0 2019-04-25T09:17:58 [subset] Updates due to changes in resolve_links() on master branch
Qunxin Liu 19afd250 2019-04-24T14:02:29 [subset] Update to use _subset2() for name table
Qunxin Liu 9ad14f56 2019-04-16T11:20:58 [subset] update name table subsetting with new serializer
Qunxin Liu e501ea14 2019-04-05T10:05:55 [subset] Subset name table step 3, add --nameids option to guide the selection of which name records to keep in the subset method.
Qunxin Liu 2637a816 2019-04-02T13:38:27 [subset] subset name table step 2, add implementation for collecting subset elements and serialize method
Qunxin Liu 408c1dae 2019-03-29T10:34:32 [subset] subset name table step 1, write out table unmodified, use accelerator to access string
Behdad Esfahbod 079d2dcb 2019-04-12T15:00:37 Add HB_NO_NAME_TABLE_AAT Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod ef006549 2019-01-22T12:08:57 Convert tag enum class consts to static constexpr Part of https://github.com/harfbuzz/harfbuzz/issues/1553
Behdad Esfahbod b1152d5e 2019-01-17T18:17:04 Use NNOffsetTo<>
Behdad Esfahbod 71da9ca6 2018-12-27T18:01:06 [vector] Remove use of arrayZ() by using casts
Behdad Esfahbod 474a1205 2018-12-21T18:46:51 [array/vector] Rename len to length
Ebrahim Byagowi e4120085 2018-12-17T21:31:01 Remove redundant void from C++ sources (#1486)
Behdad Esfahbod dcfa4a8d 2018-12-16T20:40:07 [array] Remove custom hb_bytes_t implementation
Ebrahim Byagowi b2ebaa9a 2018-12-16T22:38:10 Remove redundant 'inline' from methods (#1483)
Behdad Esfahbod f998bb20 2018-11-30T12:52:21 More weird fixes In file included from hb-ot-name.cc:29: hb-ot-name-table.hh: In member function 'unsigned int OT::name::get_size() const': hb-ot-name-table.hh:157: error: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second: hb-open-type.hh:354: note: candidate 1: const Type& OT::UnsizedArrayOf<Type>::operator[](unsigned int) const [with Type = OT::NameRecord] hb-ot-name-table.hh:157: note: candidate 2: operator[](const T*, int) <built-in> hb-ot-name-table.hh: In member function 'void OT::name::accelerator_t::init(hb_face_t*)': hb-ot-name-table.hh:196: error: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second: hb-dsalgs.hh:574: note: candidate 1: Type& hb_array_t<Type>::operator[](unsigned int) const [with Type = const OT::NameRecord] hb-ot-name-table.hh:196: note: candidate 2: operator[](T*, int) <built-in> hb-ot-name-table.hh:197: error: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second: hb-dsalgs.hh:574: note: candidate 1: Type& hb_array_t<Type>::operator[](unsigned int) const [with Type = const OT::NameRecord] hb-ot-name-table.hh:197: note: candidate 2: operator[](T*, int) <built-in> hb-ot-name-table.hh:198: error: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second: hb-dsalgs.hh:574: note: candidate 1: Type& hb_array_t<Type>::operator[](unsigned int) const [with Type = const OT::NameRecord] hb-ot-name-table.hh:198: note: candidate 2: operator[](T*, int) <built-in> make[4]: *** [libharfbuzz_la-hb-ot-name.lo] Error 1 make[3]: *** [all-recursive] Error 1
Behdad Esfahbod 5c4fead7 2018-11-29T15:04:34 Convert "static const hb_tag_t" constants to enum
Behdad Esfahbod da6aa3b0 2018-11-11T11:40:57 Add hb_blob_ptr_t.destroy()
Behdad Esfahbod 5d0078a4 2018-11-10T23:52:15 Add hb_blob_ptr_t Use in a couple of places. Push to bots to see how many unhappy before I convert the rest.
Behdad Esfahbod 0b0b38ec 2018-11-03T16:15:30 Fix null accelerator's Fixes all except for cmap. To be done separately. Part of https://github.com/harfbuzz/harfbuzz/issues/1146
Behdad Esfahbod a7aba99b 2018-10-30T14:04:09 [name] Rename hb_name_id_t to hb_ot_name_id_t https://github.com/harfbuzz/harfbuzz/pull/1254
Behdad Esfahbod 6ce49a92 2018-10-28T08:26:30 [name] Change hb_name_id_t back to unsigned int https://github.com/harfbuzz/harfbuzz/commit/d941f66c75fe26f909b1ba248535cc372bbde851#commitcomment-31076011
Behdad Esfahbod d941f66c 2018-10-27T02:55:52 [name] Make hb_name_id_t be the enum This is like hb_script_t. We had this exposed as unsigned int since 2.0.0 release in two APIs, as well as hb_ot_layout_get_size_params() from earlier. But since no one uses those (right?!), let's just fix this now.
Behdad Esfahbod 622b014f 2018-10-24T12:40:15 [name] Skip enumerating names with unknown language
Behdad Esfahbod 327546e6 2018-10-23T23:33:44 [name] Hook up ltag table
Behdad Esfahbod dc9a5f88 2018-10-23T23:16:06 [name] Do record sanitization at run-time
Behdad Esfahbod a53d301b 2018-10-23T23:05:55 [name] Minor
Behdad Esfahbod 68f17210 2018-10-23T22:19:09 [name] Fix cmp for invalid language
Behdad Esfahbod e2f9b657 2018-10-23T21:19:56 [name] Start adding language support
Behdad Esfahbod 6db6bbe6 2018-10-23T21:12:58 [name] Remove unused cmp function
Behdad Esfahbod 4668a050 2018-10-23T20:51:53 [name] Hook things up Accept Mac Latin name entries as ASCII as well.
Behdad Esfahbod 84811a06 2018-10-23T03:16:03 [name] Fix for rebase changes to hb_array_t
Behdad Esfahbod a826a873 2018-10-16T13:06:56 [name] Hide internal details from public API
Behdad Esfahbod c783d363 2018-10-15T23:28:49 [name] Pre-allocate array
Behdad Esfahbod c2aa4095 2018-10-15T23:09:28 [name] Start implementing hb_ot_name_get_utf16()
Behdad Esfahbod 90420ed8 2018-10-15T22:48:48 [name] Implement hb_ot_name_get_names()