src/hb-common.cc


Log

Author Commit Date CI Message
David Corbett fd748fac 2020-03-15T15:59:31 Update to Unicode 13.0.0
David Corbett 665483c9 2020-04-01T17:28:12 Recognize Elymaic as a right-to-left script
Evgeniy Reizner b79ceac3 2019-12-15T16:50:01 Prefer UINT_MAX instead of uint overflow. Also, prefer HB_FEATURE_GLOBAL_START and HB_FEATURE_GLOBAL_END.
Evgeniy Reizner b618e0ae 2019-12-15T16:26:50 Remove non-breaking spaces from comments. `0xC2A0` was used, for some reasons. It's not really a problem, but Qt Creator constatly trying to replace them with regular spaces, so I have to edit those files separately.
Behdad Esfahbod eefb78f6 2019-12-08T21:07:00 Minor
Behdad Esfahbod 0414341a 2019-12-05T11:26:39 Prefer AAT shaping over OT if both available Fixes https://github.com/harfbuzz/harfbuzz/issues/1529
Ebrahim Byagowi e6909ee5 2019-09-18T22:12:25 minor
Ebrahim Byagowi d8af9ee0 2019-09-18T00:47:55 Don't rely on nullptr deref recovery Fixes this -fno-sanitize-recover=undefined fail, /types/language: hb-common.cc:385:20: runtime error: member access within null pointer of type 'const struct hb_language_impl_t' #0 0x4caa34 in hb_language_to_string /home/user/code/harfbuzz/src/hb-common.cc:385:20 #1 0x4c9be8 in test_types_language /home/user/code/harfbuzz/test/api/test-common.c:205:3 #2 0x7f9557e72f49 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x72f49) #3 0x7f9557e72e7a (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x72e7a) #4 0x7f9557e73121 in g_test_run_suite (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x73121) #5 0x7f9557e73140 in g_test_run (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x73140) #6 0x4c88a3 in hb_test_run /home/user/code/harfbuzz/test/api/./hb-test.h:88:10 #7 0x4c88a3 in main /home/user/code/harfbuzz/test/api/test-common.c:224:10 #8 0x7f9556e64b96 in __libc_start_main /build/glibc-OTsEL5/glibc-2.27/csu/../csu/libc-start.c:310 #9 0x41e7d9 in _start (/home/user/code/harfbuzz/test/api/test-common+0x41e7d9)
Ebrahim Byagowi 80613e5b 2019-09-07T14:25:54 Minor, remove unused header
Ebrahim Byagowi 57f88e11 2019-09-04T01:20:50 [number] Turn hb_parse_float into hb_parse_double
Ebrahim Byagowi b5e6805e 2019-09-03T15:23:40 [number] Minor tweak on parser related codes
Ebrahim Byagowi a77bb7eb 2019-09-03T14:49:14 Move hb_codepoint_parse to hb_parse_uint
Ebrahim Byagowi 43372fbb 2019-09-03T01:02:40 Merge and aggregate number parsing logics to form hb-number
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
GaryQian ccf14482 2019-06-24T12:57:13 Cast long->size_t to ensure comparison of similar types
Ebrahim Byagowi 19b8eb08 2019-06-11T01:33:30 Move HB_NO_SETLOCALE to closer place to its to unbreak HB_TINY build (#1768)
Behdad Esfahbod 1da08917 2019-05-24T15:41:34 Put back Since: tags for hb_color_get_*
Behdad Esfahbod c572732f 2019-05-13T15:41:09 Fix more excess semi-colon errors
Behdad Esfahbod 41248cce 2019-05-07T20:54:31 Remove MIN/MAX in favor of hb_min/hb_max
Ebrahim Byagowi f27fdca4 2019-04-30T13:01:04 [doc] Add documentation to hb_color_get_* and hb_directwrite_face_* (#1690)
Ebrahim Byagowi 9542bdd0 2019-04-29T14:52:28 Add color channels getters ABI (#1513) So can be used with language wrappers
David Corbett 5daeff3e 2019-04-17T09:11:44 Fix "hb_script_" doc typo
Behdad Esfahbod 54ece299 2019-04-16T16:45:53 Use type aliasing for meta-functions, ie. those returning a type
David Corbett 087b9a0a 2019-02-18T22:30:40 Fix or document unsupported font-feature-settings
David Corbett 45adc185 2019-02-18T22:30:40 Fix or document unsupported font-feature-settings
Khaled Hosny 6bd4c082 2019-02-19T02:23:58 [doc] Document hb_feature_from_string() syntax Copied and edited from the util option documentation. The docbook table syntax is too verbose, but that is the best I can come up with.
Ebrahim Byagowi e4120085 2018-12-17T21:31:01 Remove redundant void from C++ sources (#1486)
Ebrahim Byagowi b2ebaa9a 2018-12-16T22:38:10 Remove redundant 'inline' from methods (#1483)
Behdad Esfahbod f99abcc3 2018-11-24T00:22:21 Add template-function convenience macros
David Corbett 018ba46e 2018-11-23T13:21:22 Don't canonicalize '@' to '-' in language tags Fixes #1406.
Behdad Esfahbod b89c7fd3 2018-11-21T12:32:48 Allow defining HB_USE_ATEXIT to 0 That's better use of that value than requiring extra macro HB_NO_ATEXIT
Behdad Esfahbod f6fc5574 2018-11-05T13:23:54 Add pointer magic operators to hb_atomic_ptr_t
Behdad Esfahbod cf5fa57f 2018-10-27T04:50:38 [docs] Change section titles again I think I like the uniform "hb-*" more.
Behdad Esfahbod 00cf4e5e 2018-10-27T04:07:33 [docs] Fill in some sections
Behdad Esfahbod 8869436c 2018-10-23T03:07:48 When parsing feature ranges, accept ';' instead of ':'
Behdad Esfahbod 07386ea4 2018-10-22T21:18:27 Remove const and references when binding Null() Fixes https://github.com/harfbuzz/harfbuzz/issues/1299 Removes anomaly I was seeing in cpal table trying to use implicit Null(NameID).
Bruce Mitchener 8d1e479d 2018-10-18T22:18:42 Use bool literals instead of 0/1.
David Corbett a03f5f4d 2017-12-28T22:59:29 Replace "ISO 639" with "BCP 47" `hb_language_from_string` accepts not only ISO 639 but also BCP 47. Not all ISO 639 codes are valid BCP 47 tags but the function does not accept overlong language subtags anyway.
Behdad Esfahbod 7e6e5bf6 2018-10-10T18:59:07 Fix option string matching
Behdad Esfahbod 38a7a8a8 2018-10-10T17:44:46 Allow HB_OPTIONS=aat to prefer AAT tables over OT Fixes https://github.com/harfbuzz/harfbuzz/issues/322
Ebrahim Byagowi 5de2d9cd 2018-10-04T02:14:18 Minor, fix double-promotion warnings (#1221)
Behdad Esfahbod ba0f0f15 2018-09-30T03:49:52 Document setlocale() threadsafety issue "Fixes" //github.com/harfbuzz/harfbuzz/issues/1191
David Corbett d8d1e7df 2018-09-17T11:09:51 Don't enforce a native direction for Old Hungarian
Behdad Esfahbod becd84aa 2018-09-11T01:26:18 Add HB_FEATURE_GLOBAL_START/END Fixes https://github.com/harfbuzz/harfbuzz/issues/1141 New API: HB_FEATURE_GLOBAL_START HB_FEATURE_GLOBAL_END
Behdad Esfahbod c77ae408 2018-08-25T22:36:36 Rename hb-*private.hh to hb-*.hh Sorry for the noise, downstream custom builders. Please adjust.
Emil A Eklund 22defe09 2018-08-14T14:47:20 Add guard around free_static_C_locale Add HB_USE_ATEXIT guard around free_static_C_locale missed by previous commit.
Behdad Esfahbod 6750ec69 2018-08-12T17:42:16 [lazy] Use for C_locale
Martin Hosken 39607dc9 2018-08-09T15:16:32 Support _ in feature ids
Behdad Esfahbod 1f738094 2018-08-09T00:22:37 [atomic] Add hb_atomic_ptr_t<> and port all uses Found and fixed a couple bugs. Found a couple multithreading issues. Marked them with "XXX-MT-bug".
Behdad Esfahbod 4bc16aca 2018-07-31T21:05:51 [atomic] Add get_relaxed / set_relaxed To help TSan and be more "correct".
Behdad Esfahbod e22a48ac 2018-07-23T13:24:26 One more visibility trick Should fix Windows build again.
Behdad Esfahbod be458eb0 2018-07-10T14:41:04 Include more basic internal headers from hb-private.hh
David Corbett 46d8f0d5 2018-07-06T15:47:03 Do not enforce a native direction of LTR for Runic Fixes #481
Behdad Esfahbod 060e6b4a 2018-06-05T17:31:46 Update to Unicode 11.0.0 UCDN is not updated yet.
Behdad Esfahbod f673cfbd 2018-05-07T13:58:32 Support scripts that are written both LTR and RTL Right now only Old Italic is marked as such. Fixes https://github.com/harfbuzz/harfbuzz/issues/1000
Behdad Esfahbod a60ba796 2018-05-01T19:01:25 s/finish/fini For consistency.
Ebrahim Byagowi f24b0b97 2018-04-12T13:40:45 Update the links and revive the dead ones
Ebrahim Byagowi 70d36543 2018-03-30T05:00:28 Make atexit callbacks threadsafe (#930)
Behdad Esfahbod 5aa2c6e1 2018-03-28T15:33:51 [atexit] Make hb_languate_item_t *langs freeing threadsafe Part of https://github.com/harfbuzz/harfbuzz/issues/923
Bruce Mitchener 90218fa9 2018-01-31T20:44:45 Fix typos.
Cosimo Lupo c8f2a4f5 2018-01-18T22:49:40 hb-common.cc: Hatran script is right-to-left (#714) "Hatran is written from right to left horizontally" http://www.unicode.org/L2/L2012/12312-n4324-hatran.pdf This ancient script was added with Unicode 8.0. Also this spreadsheet (referenced in an inline comment in the source code) has it as RTL: http://goo.gl/x9ilM
David Corbett 85bb89a8 2017-12-04T15:15:27 Fix string matching in parse_bool
Behdad Esfahbod 7f39f576 2017-11-13T15:04:13 Implement strtod_l() on MSVC Patch from Jean Ghali on mailing list.
Behdad Esfahbod 8eaff980 2017-10-31T15:30:06 Remove HB_TAG_CHAR4
Behdad Esfahbod dbdbfe3d 2017-10-15T12:11:08 Use nullptr instead of NULL
Behdad Esfahbod 3ca69c8c 2017-09-14T20:50:35 Use strtod_l() to correctly parse decimal numbers in French & other locales Test with, eg.: $ LC_ALL=fr_FR.utf-8 ./hb-view NotoSansArabic-VF.ttf بهداد --variations wght=1.2
Ebrahim Byagowi 3b0e47ca 2017-06-19T14:47:09 Fix arm-none-eabi build (fixes #451) (#496)
Behdad Esfahbod 7dba3063 2017-06-01T11:44:42 Handle allocation failure in hb-language code
Sebastian Rasmussen 92e2c4ba 2017-05-29T12:53:30 Avoid using strdup inside library. (#488) If an application provides a malloc replacement through hb_malloc_impl() it is important that it is used to allocate everything, but the use of strdup() circumvents this and causes system malloc() to be called instead. This pairs badly with the custom hb_free_impl() being called later.
Chris Peterson aacca375 2017-04-17T23:25:24 Fix clang -Wcomma warnings (#471) (#472) clang's new -Wcomma compiler option warns about possible misuse of the comma operator such as between two statements. hb-common.cc:190:9 [-Wcomma] possible misuse of comma operator here hb-ot-layout-gsubgpos-private.hh:345:30 [-Wcomma] possible misuse of comma operator here hb-shape-plan.cc:438:26 [-Wcomma] possible misuse of comma operator here
Khaled Hosny 91570a1e 2017-03-22T23:07:15 Just always use strtod here
Chun-wei Fan 539571c1 2017-02-24T17:58:25 src/hb-common.cc: Fix build on older Visual Studio Visual Studio only supported strtof() from Visual Studio 2013 onwards, so use strtod() instead to do the operation, which should do the same thing, sans going to a double, not a float.
Behdad Esfahbod d2f249e7 2017-01-22T17:42:33 Stub out doc comments for new symbols
Behdad Esfahbod bb1e1926 2017-01-21T17:41:37 [var] Rename var_coord to variation Looks much better.
Behdad Esfahbod b3c0714b 2017-01-20T20:30:03 [var] Add hb_var_coord_t and parsing routines
Behdad Esfahbod 72364103 2017-01-20T20:16:53 Move code around
Khaled Hosny e4d451ee 2016-07-02T00:04:57 [introspection] Fix hb_tag_from_string annotation
Behdad Esfahbod 691086f1 2016-05-06T12:08:18 Add Unicode 9 beta scripts These are frozen, so good time to add.
Behdad Esfahbod 80c8855c 2016-02-12T12:50:17 Minor
Khaled Hosny 8ab797c5 2015-12-29T17:42:16 [docs] A bit more buffers documentation
Behdad Esfahbod ea512f71 2015-11-26T19:22:22 Use C-style casts instead of compare to 0, to convert hb_bool_t to bool
Behdad Esfahbod 766963ad 2015-11-24T15:38:43 Merge pull request #114 from ThePhD/vc++-fixes Fix all VC++ warnings and errors
Behdad Esfahbod f3159ba5 2015-09-29T14:34:56 Micro-optimize hb_language_from_string() As measured / improved by Benson Limketkai.
Behdad Esfahbod b8811429 2015-09-03T15:53:22 Fix Since tags Fixes https://github.com/behdad/harfbuzz/issues/103
ThePhD 5c99cf93 2015-08-14T01:02:00 Merge branch 'master' into vc++-fixes
Behdad Esfahbod 64a2726e 2015-07-15T01:36:39 Add Unicode 8.0 scripts Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1183209
ThePhD e0a828ec 2015-06-23T09:07:17 Back to using regular `strdup`, with an `hb-private.hh` fix that special-cases VC++'s definition and usage of the words
ThePhD 8e545d59 2015-06-22T22:29:04 Fix all VC++ warnings and errors in the current commit's builds.
Behdad Esfahbod 351f68f4 2015-06-12T17:46:06 [bindings] Fix hb_language_get_default() and hb_ot_tag_to_language() Part of https://github.com/behdad/harfbuzz/issues/91
Sascha Brawer 01c3a885 2015-06-01T13:22:01 Fix "Since:" tags Based on data from http://upstream-tracker.org/versions/harfbuzz.html Resolves #103
Khaled Hosny 04f89e8f 2015-04-10T17:49:01 [bindings] Fix ownership of returned hb_language_t It should not be freed by the caller.
Behdad Esfahbod f3b170bd 2015-04-08T16:26:24 Minor
Khaled Hosny a394bb66 2015-03-22T20:29:10 [bindings] Fix *_from_string functions Without the element-type they will be getting garbage, at least with Python.
Konstantin Ritt 675956ac 2015-01-27T11:23:07 Do not leak hb_language_t on hb_language_item_t destruction
Chris Peterson fb85d618 2015-01-04T19:31:10 Add #ifdef HB_USE_ATEXIT to fix -Wunused-function warnings
Chris Peterson d1897a98 2015-01-03T19:46:19 Fix hb_atomic_ptr_cmpexch -Wunused-value warnings
Behdad Esfahbod 38fb30d7 2014-08-06T13:34:49 Use atexit() only if it's safe to call from shared library Apparently they are not (advertised as?) safe on BSD systems. We ignore the case of static libraries. Whitelisted on glibc, Android, and MSVC / mingw. https://bugs.freedesktop.org/show_bug.cgi?id=82246
Behdad Esfahbod 7627100f 2014-07-11T14:54:42 Mark unsigned integer literals with the u suffix Simplifies hb_in_range() calls as the type can be inferred. The rest is obsessiveness, I admit.
Behdad Esfahbod 2b051c60 2014-06-20T14:09:57 Rename HB_VERSION_CHECK and hb_version_check to "atleast" HB_VERSION_CHECK's comparison was originally written wrongly by mistake. When API tests were written, they were also written wrongly to pass given the wrong implementation... Sigh. Given the purpose of this API, there's no point in fixing it without renaming it. As such, rename. API changes: HB_VERSION_CHECK -> HB_VERSION_ATLEAST hb_version_check -> hb_version_atleast
Behdad Esfahbod a4a7899c 2014-04-28T15:06:42 [unicode7] Mark right-to-left scripts