src/hb-glib.cc

Branch


Log

Author Commit Date CI Message
Khaled Hosny af1b9acc 2025-07-02T16:55:48 [glib] Drop fallback code for versions we don’t support We require Glib 2.30.0, so drop checks for older versions.
Behdad Esfahbod 49fe5c1e 2022-11-15T15:37:23 [glib] Remove old cruft from pre-2011
Behdad Esfahbod ed116320 2021-09-14T07:09:54 Call atexit() via hb_atexit() Part of https://github.com/harfbuzz/harfbuzz/issues/3197
Ebrahim Byagowi 44a3136a 2020-07-29T07:03:44 [glib] Default to glib's script type handling 2.29.14 is almost released a decade ago, no need to support archaic glib versions.
Behdad Esfahbod a11db0b9 2020-04-23T15:32:43 Merge branch 'master' into usermanual-integration
n8willis fd59cc70 2020-04-13T15:15:00 Update src/hb-glib.cc Co-Authored-By: Khaled Hosny <dr.khaled.hosny@gmail.com>
Behdad Esfahbod aa3450ca 2019-06-17T22:41:49 [config] Don't compile disabled features This makes it possible to include all .cc files into build, even if not building CoreText, Uniscribe, etc. This was mostly to help custom builders. But also means that we can include all files in our own build system. Not sure if we should. Definitely simplifies things, but slightly only.
Nathan Willis bfa7b0af 2019-05-20T17:36:55 [Docs] Add gtk-doc comments to hb-gobject and hb-glib.
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 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 04981ee0 2018-10-27T04:40:43 [docs] More
Behdad Esfahbod a52bc039 2018-10-09T00:56:33 Properly remove deprecated stuff
Behdad Esfahbod fc509165 2018-10-09T00:39:42 Remove deprecated decompose_compatibility stuff
Behdad Esfahbod eed737f6 2018-10-09T00:33:30 Remove deprecated eastasian_width
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 7112c641 2018-08-14T13:50:24 Guard free_static function definitions with macro Add HB_USE_ATEXIT macros around free_static function definitions to avoid unused function compiler warnings/errors.
Behdad Esfahbod f0ef096b 2018-08-13T10:30:41 Don't add reference in get_unicode_funcs() functions Users don't expect a new reference returned from a get() function. Indeed, all users of that API I foud where NOT destroying the reference. Just change the implementations to NOT return a reference. This applies to the following APIs: hb_unicode_funcs_get_default() hb_glib_get_unicode_funcs() hb_icu_get_unicode_funcs() Fixes https://github.com/harfbuzz/harfbuzz/issues/1134
Behdad Esfahbod 7bd508a0 2018-08-12T17:19:55 [lazy] Rename free()
Behdad Esfahbod 53442be1 2018-08-12T16:20:11 [lazy] Use for ft_library
Behdad Esfahbod 7a8d4803 2018-08-12T16:00:13 [lazy] Add .free()
Behdad Esfahbod cb3fc368 2018-08-12T13:39:01 [ucdn/glib/icu] Port unicode_funcs statics to lazy-loader
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".
Ebrahim Byagowi 70d36543 2018-03-30T05:00:28 Make atexit callbacks threadsafe (#930)
Behdad Esfahbod 93f7c165 2017-11-14T10:59:54 Revert "[glib/ucdn/icu/ft/ot] Make returned funcs inert" This reverts commit 5daf3bd4494cce6b4fb074533be9e99c4d9e0edd. If other atexit callbacks try to destruct the objects we destruct in atexit callbacks, bad things will happen. I'll come up with some other way to catch premature destruction of HB-owned objects. Fixes https://github.com/behdad/harfbuzz/issues/618
Behdad Esfahbod 5daf3bd4 2017-10-27T16:34:01 [glib/ucdn/icu/ft/ot] Make returned funcs inert Such that client cannot accidentally destroy them, even though that will be a bug in their code...
Behdad Esfahbod bfa7f37a 2017-10-27T16:03:51 Fix previous commit Oops.
Behdad Esfahbod 8864864b 2017-10-27T15:26:45 [glib/icu/ucdn] Make the funcs object allocated on demand
Behdad Esfahbod dbdbfe3d 2017-10-15T12:11:08 Use nullptr instead of NULL
Behdad Esfahbod e1b6d923 2017-10-11T15:51:31 Remove cast of functions to (hb_destroy_func_t) Fixes https://github.com/behdad/harfbuzz/issues/474
Mike Hommey 1c98ff87 2016-09-30T18:15:37 Support building with older glib versions It is desirable to be able to build against older versions of glib. fd7a245 changed the configure check to require glib > 2.38 for G_TEST_DIST. Before that, version 2.16 was required, but in fact, since aafe395, G_PASTE is being used, which was introduced in 2.19.1. And since 0ef179e2, hb-glib uses GBytes, which were introduced in 2.31.10. 2.19.1 is rather old, but 2.38 is rather new. For Firefox, building against 2.22 is still supported, although we could probably get away with bumping that to 2.28. Either way, GBytes is not available. Arguably, if you build against a glib that doesn't support GBytes, you're not going to use the hb_glib_blob_create function, so we hide the function when building against such a glib. As for G_TEST_DIST, when building against versions of glib that don't support it, we can fallback to the previous behavior, which, AIUI, was just making the test not work when building in a separate directory.
Behdad Esfahbod 35d18585 2015-11-26T19:30:37 Fix a few docs blocks
Sascha Brawer 01c3a885 2015-06-01T13:22:01 Fix "Since:" tags Based on data from http://upstream-tracker.org/versions/harfbuzz.html Resolves #103
Behdad Esfahbod 0ef179e2 2015-01-06T16:58:33 [glib] Add hb_glib_blob_create() that takes GBytes
Behdad Esfahbod 90364843 2014-03-24T14:26:36 Start fleshing out builtin font functions
Behdad Esfahbod 54e6f6c5 2013-08-09T14:34:54 Clean up list of Unicode scripts Rename HB_SCRIPT_CANADIAN_ABORIGINAL to HB_SCRIPT_CANADIAN_SYLLABICS and a macro for the old name.
Behdad Esfahbod 0beb66e3 2012-12-05T18:46:04 Fix warnings
Behdad Esfahbod d5045a5f 2012-08-11T21:26:25 [ICU] Use new normalizer2 compose/decompose API It's considerably faster than the fallback implementation we had previously!
Behdad Esfahbod 3a7e137a 2012-08-03T17:23:40 Dn't use gint
Behdad Esfahbod 21fdcee0 2012-08-01T16:23:44 Add hb_unicode_combining_class_t
Behdad Esfahbod 378d279b 2012-07-31T21:36:16 Implement Unicode compatibility decompositions Based on patch from Philip Withnall. https://bugs.freedesktop.org/show_bug.cgi?id=41095
Behdad Esfahbod 0594a244 2012-06-05T20:35:40 Cleanup TRUE/FALSE vs true/false
Behdad Esfahbod be4560a3 2012-06-05T18:14:03 Undo default unicode-funcs to avoid static initializer again
Behdad Esfahbod f06ab8a4 2012-06-05T12:31:51 Better hide nil objects and make them const
Behdad Esfahbod f32c0012 2012-03-07T12:53:34 Add Unicode 6.1.0 scripts
Behdad Esfahbod c214cff5 2011-08-14T15:17:16 Start adding gobject-introspection support
Behdad Esfahbod f22e6611 2011-08-07T00:59:12 [glib] Protect against invalid characters
Behdad Esfahbod c605bbbb 2011-08-04T20:00:53 Remove C++ guards from source files Where causing issues for people with MSVC.
Behdad Esfahbod 63c0ef4a 2011-07-21T20:58:42 Fix decompose() implementations to work with non-starter non-composables Add tests.
Behdad Esfahbod ffd4a436 2011-07-20T22:30:29 Add tests for compose()/decompose() Adjust glib fallback implementation. The tests are not hooked up for ICU yet.
Behdad Esfahbod 26b60249 2011-07-20T21:58:14 [glib] Use g_unicode_script_to/from_iso15924() if available
Behdad Esfahbod 22fdc667 2011-07-20T21:51:37 [glib] Add compose() and decompose() implementations with fallback
Behdad Esfahbod c4641723 2011-07-07T23:47:19 [API] Add compose() and decompose() unicode funcs, rename other ones Add compose() and decompose() unicode funcs. These implement pair-wise canonical composition/decomposition. The glib/icu implementations are lacking for now. We are adding API for this to glib, but I cannot find any useful API in ICU. May end of implementing these in-house. Changed all unicode_funcs callback names to remove the "_get" part. Eg, hb_unicode_get_script_func_t is now hb_unicode_script_func_t, and hb_unicode_get_script() is hb_unicode_script() now.
Behdad Esfahbod b9452bfc 2011-06-14T14:47:07 Fix compiler warnings with -pedantic
Behdad Esfahbod d4bee9f8 2011-04-27T09:24:37 [API] Add hb_unicode_funcs_get_default()
Behdad Esfahbod fca368c4 2011-04-21T18:24:02 Add hb_object_header_t which is the common part of all objects Makes way for adding arbitrary user_data support.
Behdad Esfahbod 2409d5f8 2011-04-21T17:14:28 Update Copyright headers
Behdad Esfahbod c57d454a 2011-04-20T18:50:27 Rename all private sources and headers to C++ files So we can liberally use the simple features of C++ that parts of the codebase is already using.
Behdad Esfahbod 0809aadd 2011-04-20T02:44:29 [glib] Add two-way script conversion functions Also optimizes the common-direction script lookup to be an array lookup.
Behdad Esfahbod 5c8c1b68 2011-04-20T02:29:22 Remove verbose comments
Behdad Esfahbod fb194b87 2011-04-20T02:00:47 unicode: Cleanup implementation