Commit Graph

8857 Commits

Author SHA1 Message Date
Behdad Esfahbod
19e800c9d8 Ugh. Another try, to unbreak gcc this time!
Jenga.
2019-04-15 12:07:00 -04:00
Behdad Esfahbod
3a88f55c15 Move location of HB_UNUSED to make MSVC happy 2019-04-15 11:59:57 -04:00
Behdad Esfahbod
1ae265888e Fix gcc warning 2019-04-15 11:31:40 -04:00
Ebrahim Byagowi
c0ea37b557
[ci] Fix macOS glib issue 2019-04-15 00:34:04 +04:30
Behdad Esfahbod
47e538a35f Add HB_NO_SUBSET_LAYOUT
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-12 22:54:15 -04:00
Behdad Esfahbod
a98e4068e7 Revert "Hide symbols in hb-iter"
This reverts commit 98f14c4cdb.

Same as previous commit.
2019-04-12 22:42:44 -04:00
Behdad Esfahbod
dab92bdd46 Revert "Hide more symbols"
This reverts commit 2e86d50915.

I think the setup that caused me to do this is faulty and not hiding inlines.
2019-04-12 22:39:38 -04:00
Behdad Esfahbod
98f14c4cdb Hide symbols in hb-iter
Painful.  All template methods need to be explicitly hidden :(.

Maybe we should switch to -fvisibility=hidden pragma.

A LOT more to go.
2019-04-12 18:12:06 -04:00
Behdad Esfahbod
2e86d50915 Hide more symbols
Exposed by:

$ make -j5 CPPFLAGS="-O0" CXXFLAGS=-flto=thin LDFLAGS=-lc++ && ./check-symbols.sh
2019-04-12 18:07:42 -04:00
Behdad Esfahbod
caa20e4ef9 Hide a few more symbols
Exposed by:

$ make CPPFLAGS=-O0
2019-04-12 18:00:58 -04:00
Behdad Esfahbod
95df00aec1 Hide a few static methods
Looks like static methods that do not get inlined end up exported.
We have a lot more.  Need to protect all at some point.  Wish there
was an easier way, like the visibility flag we pass that automatically
hides all inline methods.

Was exposed by check-symbols.sh when compiling on OS X 10.14 with:

$ make CPPFLAGS=-Oz CXXFLAGS=-flto=thin LDFLAGS=-lc++
2019-04-12 17:51:14 -04:00
Behdad Esfahbod
2f4be4ba54 Add HB_NO_OPTIONS
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-12 16:21:58 -04:00
Behdad Esfahbod
079d2dcbb2 Add HB_NO_NAME_TABLE_AAT
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-12 15:00:37 -04:00
Behdad Esfahbod
60a58aa61c Add HB_NO_OT_FONT_BITMAP
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-12 14:58:53 -04:00
Behdad Esfahbod
160c4d8b2d Add HB_NO_OT_FONT_CFF
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-12 14:57:49 -04:00
Behdad Esfahbod
35f3b97fac Add HB_NO_OT_SHAPE_COMPLEX_HEBREW_FALLBACK
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-12 10:16:12 -04:00
Behdad Esfahbod
414c5de26b Add HB_NO_OT_SHAPE_FALLBACK
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-12 10:12:11 -04:00
Behdad Esfahbod
fe0018f7ef Add HB_NO_OT_SHAPE_COMPLEX_THAI_FALLBACK
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-12 09:35:29 -04:00
Behdad Esfahbod
9ddbfa006d Add HB_NO_OT_LAYOUT_BLACKLIST
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-12 09:33:25 -04:00
Behdad Esfahbod
571fad4cf1 Add HB_NO_OT_SHAPE_COMPLEX_VOWEL_CONSTRAINTS
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-11 19:42:05 -04:00
Nathan Willis
3db227265b Update gtk-doc annotations for inout counts on various getter functions. 2019-04-12 00:00:47 +02:00
Nathan Willis
c08ddbd91b [Docs] Minor edits to gtk-doc inline comment review. 2019-04-12 00:00:47 +02:00
Nathan Willis
af5230bce3 [Docs] Minor; fix formatting for gtk-doc multiple-annotations. 2019-04-12 00:00:47 +02:00
Nathan Willis
6c0a1e8cd6 [Docs] Annotate gtk-doc formatting with some un-annotated (out)s. 2019-04-12 00:00:47 +02:00
Nathan Willis
5122805c74 [Docs] Fix gtk-doc formatting for (out) and (inout). 2019-04-12 00:00:47 +02:00
Nathan Willis
d3178aa52a [Docs] Fix gtk-doc references to 'kern' table functions, clarifying that GPOS is not examined. 2019-04-12 00:00:47 +02:00
Nathan Willis
3449031fad [Docs] Add inline gtk-doc documentation of GDEF glyph classes. 2019-04-12 00:00:47 +02:00
Nathan Willis
930f6fc3da [Docs] Add inlind gtk-doc comments for hb-ot-layout functions. 2019-04-12 00:00:47 +02:00
Behdad Esfahbod
b52c0e54b9 Use injected class name to simplify macros 2019-04-11 11:20:10 -04:00
Behdad Esfahbod
baf1e79075 [C++11] Use deleted methods 2019-04-11 11:18:04 -04:00
Behdad Esfahbod
824fd342d5 Rename a few macros 2019-04-11 11:16:01 -04:00
Behdad Esfahbod
edfc6be4a0 [arabic] Disable fallback shaping if HB_NO_OT_SHAPE_COMPLEX_ARABIC_FALLBACK defined
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-10 16:10:54 -04:00
Behdad Esfahbod
4d31662b5d Don't install ot-font funcs on new fonts if HB_NO_OT_FONT defined
Currently linker cannot GC hb-ot-font completely because we install
it on fonts by default.  Don't do that if HB_NO_OT_FONT defined.

Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-10 15:40:55 -04:00
Behdad Esfahbod
b111b3de02 Don't use any default unicode funcs if HB_NO_UNICODE_FUNCS is defined
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
2019-04-10 15:39:48 -04:00
Behdad Esfahbod
c5509be93a [coretext] Fix unused-variable error
Fixes https://github.com/harfbuzz/harfbuzz/issues/1659
2019-04-08 14:50:58 -04:00
Maks Naumov
4c19aa2620 Fix MSVC C4068 warning (#1656) 2019-04-05 11:46:27 -07:00
Michiharu Ariza
e44b83aac0 replace test font SourceHanSans with its subet 2019-04-05 10:15:08 -07:00
Maks Naumov
a96d003d6e Fix MSVC C4138 warning (#1657) 2019-04-05 02:29:56 -07:00
Behdad Esfahbod
c68eb7002f Minor 2019-04-03 16:24:12 -07:00
Behdad Esfahbod
85adf4ad5c [GDEF] Don't assume glyphlist is sorted
As was hit by the fuzzer.

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14032
2019-04-03 16:07:36 -07:00
Behdad Esfahbod
ecabdffc61 [algs] Add hb_min() and hb_max() 2019-04-03 16:06:34 -07:00
Behdad Esfahbod
7b863142ce [serialize] Make putting breakpoint on out-of-memory easier 2019-04-03 15:48:27 -07:00
Behdad Esfahbod
2bd2750234 [iter] Tweak SFINAE again
Don't think we need hb_is_same().
2019-04-03 15:31:53 -07:00
Behdad Esfahbod
f02ebc89ec [array] Add compy assignment operator since copy constructor is explicit 2019-04-03 15:23:06 -07:00
Behdad Esfahbod
20a73da2c9 [array] Add default copy constructor
MSVC seems to need it.
2019-04-03 14:32:15 -07:00
Behdad Esfahbod
d419a9a437 [iter] Use different SFINAE scheme to make MSVC happy
From Orvid King: TLDR; MSVC has some issues using sizeof(declval<T>()) for
SFINAE of templated types, so I just used SFINAE in a different context where
MSVC doesn't have the issue.
2019-04-03 14:18:19 -07:00
Behdad Esfahbod
2778df7972 [meta] Add hb_is_same() 2019-04-03 14:15:01 -07:00
Behdad Esfahbod
6215fb8e68 [serialize] Actually reclaim storage from duplicate objects 2019-04-02 23:10:03 -07:00
Behdad Esfahbod
3305a2cad2 [serialize] Port to use object pool
Tested, but feels fragile :(.
2019-04-02 22:58:49 -07:00
Behdad Esfahbod
5efbc01174 [pool] Uses memset() instead of assigning Null()
Assignment is invalid on invalid object.
2019-04-02 22:41:06 -07:00