Commit Graph

5617 Commits

Author SHA1 Message Date
Behdad Esfahbod 401cdf0792 [ot-font] Fix sign of ascent/descent
Some fonts, like msmincho, have positive number as descent
in vhea table.  That's wrong.  Just enforce sign on ascent/descent
when reading both horizontal and vertical metrics.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1248
2018-10-23 17:00:49 -07:00
Behdad Esfahbod ba502dea1e [morx] Fix cluster-merging when ligating
Only merge when actual ligature happened.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1305
2018-10-23 16:50:31 -07:00
Garret Rieger aa5af8d041 Fix size calculation in DEFINE_SIZE_ARRAY_SIZED. 2018-10-23 16:04:21 -07:00
Behdad Esfahbod f33ad6d692 [aat] Fix up previous commit and add files 2018-10-23 14:31:51 -07:00
Behdad Esfahbod ffe3478448 [aat] Allow enabling/disabling features
Only works at entire-buffer range, not sub-ranges.

Test with:

$ hb-shape Zapfino.dfont Zapfino
[Z_a_p_f_i_n_o=0+2333]

$ hb-shape Zapfino.dfont Zapfino --features=-dlig
[Z=0+416|a=1@-21,0+264|p_f=2+433|i=4+181|n=5+261|o=6+250]

$ hb-shape Zapfino.dfont Zapfino --features=+dlig
[Z_a_p_f_i_n_o=0+2333]

Fixes https://github.com/harfbuzz/harfbuzz/issues/1303
2018-10-23 14:14:03 -07:00
Behdad Esfahbod 8be0e5fd45 [ot-map] Minor 2018-10-23 13:39:50 -07:00
Behdad Esfahbod e8fccbc36b Minor 2018-10-23 13:25:03 -07:00
Behdad Esfahbod 76324d95ca Shift code around 2018-10-23 13:09:30 -07:00
Behdad Esfahbod cf92d6579e [trak] Allow disabling tracking for ranges of text
Fixes https://github.com/harfbuzz/harfbuzz/issues/1303
2018-10-23 03:10:56 -07:00
Behdad Esfahbod 8869436cb8 When parsing feature ranges, accept ';' instead of ':' 2018-10-23 03:07:48 -07:00
Ebrahim Byagowi 22ecefd88e Make tracking optout possible using 'trak' ot feature
So '--features=-trak' or 'font-feature-settings: 'trak' 0;' can prevent
applying of tracking if used.
2018-10-23 02:57:55 -07:00
Behdad Esfahbod 6d40eb8372 Touch up on previous commit
https://github.com/harfbuzz/harfbuzz/pull/1273
2018-10-23 02:51:42 -07:00
David Corbett 205737acdc [use] Prohibit visually ambiguous vowel sequences 2018-10-23 02:25:08 -07:00
Behdad Esfahbod 48ed598a35 [VORG] Hook up to hb-ot-font's v_origin
Fixes https://github.com/harfbuzz/harfbuzz/issues/544

Test added with NotoSansCJK, eg. with U+FF38.
2018-10-23 02:21:27 -07:00
Behdad Esfahbod 097ecfd4a9 [VORG] Add get_y_origin()
Unhooked.
2018-10-23 02:09:42 -07:00
Behdad Esfahbod 6fb24d5e3e [VORG] Add VORG table
Cherry-picked from cff-subset branch.
2018-10-23 01:59:43 -07:00
Behdad Esfahbod 531f9822b2 [morx] Add a few debug messages to Ligature chain 2018-10-23 01:32:08 -07:00
Behdad Esfahbod 0e5bcdef7f [morx] Clear stack upon underflow when acting ligatures 2018-10-23 00:39:44 -07:00
Behdad Esfahbod 792071de40 [morx] Leave ligature on stack after ligating
Test with Apple Color Emoji.ttf of ~66MB and following sequence:

./hb-shape Apple\ Color\ Emoji-old.ttf --font-funcs=ot -u U+1F468,200d,U+1F469,200d,U+1F467,200d,1f466

Should form full family if matching works correctly.  It first makes
family of three, then makes family of four out of that and the last
two characters.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1292
2018-10-22 23:38:34 -07:00
Behdad Esfahbod 8c78ced95b Unbreak builds 2018-10-22 21:49:42 -07:00
Behdad Esfahbod 8d689f8a7b Add hb_array<>() specialization for UnsizedArrayOf
Related https://github.com/harfbuzz/harfbuzz/issues/1301
2018-10-22 21:33:18 -07:00
Behdad Esfahbod abfbba1911 Add hb_array<>()
Simplifies transient object creation.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1301
2018-10-22 21:27:45 -07:00
Behdad Esfahbod 17ffbc070f [color] Use Index for colorIdx
Doesn't matter, but matches the description.
2018-10-22 21:22:25 -07:00
Behdad Esfahbod 07386ea410 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).
2018-10-22 21:21:17 -07:00
Behdad Esfahbod b18acab7bc [color] Add HB_COLOR
Normally I would have added to_string / from_string like other types
have.  But since we don't use hb_color_t much, I'm not going to do that.
Although, if we did, we could use it in hb-view to parse colors...
2018-10-22 18:20:57 -07:00
Behdad Esfahbod 228f96c9d0 [color] Finish reviewing / revamping CPAL
Now to hb_color_t.
2018-10-22 16:55:12 -07:00
Behdad Esfahbod 683fad0627 [color] Minor 2018-10-22 16:35:03 -07:00
Behdad Esfahbod 14474d2104 [color] Rely on CPALV1Tail Null object 2018-10-22 16:31:13 -07:00
Behdad Esfahbod d7865107ea Remove const from hb_array_t details
Will come in through <T> if desired.
2018-10-22 16:24:16 -07:00
Behdad Esfahbod f3336580dd [color] Use hb_array_t in CPAL
Doesn't work though, ouch :(.  Need to figure out if it's unreasonable
to expect Null(T) inside hb_array_t<T> to see the later specialization
of Null for NameID.
2018-10-22 16:24:16 -07:00
Behdad Esfahbod 5ae18855d1 [color] Check for null CPAL arrays
We cannot use a nullable offset here though.
2018-10-22 16:24:16 -07:00
Behdad Esfahbod 69ab72e4aa [color] More CPAL rename 2018-10-22 16:24:16 -07:00
Behdad Esfahbod 0befb06c46 [color] More CPAL rename 2018-10-22 16:24:16 -07:00
Behdad Esfahbod 3600d20603 [color] Rename vars in CPAL 2018-10-22 16:24:16 -07:00
Ebrahim Byagowi 0babf761c9
Adopt dump-emoji with latest unreleased APIs changes (#1297) 2018-10-23 01:33:45 +03:30
Behdad Esfahbod 7997144b5f [color] Revamp palette API 2018-10-22 14:22:31 -07:00
Behdad Esfahbod 3bf91bd269 [color] Rewrite colr access
COLR table has one function: return layers for a glyph, and we expose exactly
that, so should just wire it through.  Also use sub_array() for verifiable
safety.

Also, BaseGlyphRecord's null object is enough.  We don't need to special-case
the not-found.
2018-10-22 14:21:23 -07:00
Behdad Esfahbod 1de17bdb80 [colr] Add hb_ot_color_layer_t
We never return parallel arrays from functions.  That's inconvenient
and hard to bind.
2018-10-22 14:21:23 -07:00
Behdad Esfahbod 3b3668acc8 [color] Rename / reorder a bit
Implement has_data() for realz.
2018-10-22 14:21:23 -07:00
Behdad Esfahbod 9085a72deb [cpal] Touch up palette flags 2018-10-22 13:03:29 -07:00
Behdad Esfahbod ee11fae9d0 [color] Rename "gid" to "glyph"
We don't expose "gid" in API.
2018-10-22 13:03:29 -07:00
Behdad Esfahbod 228fa71bf9 [colr] Move sanitize 2018-10-22 13:03:29 -07:00
Ebrahim Byagowi d440c8d3fb
Add chromacheck Emoji test fonts and minor preparations (#1294) 2018-10-22 22:07:59 +03:30
Behdad Esfahbod b92b9d7e52 [colr] Move compare function into a static
Not sure if MSVC would be unhappy about this.
2018-10-22 10:17:31 +02:00
Behdad Esfahbod b6b171732a [colr] Minor 2018-10-22 10:17:31 +02:00
Behdad Esfahbod a6ade3471e [colr] Move sanitize() to right place
Sanitize always comes just before data member definitions, so
it's easy to cross-check.
2018-10-22 10:17:31 +02:00
Behdad Esfahbod 24adc15757 [colr] Touch up a bit
When a struct is plain old data with no references, etc, it's okay
to mark its members public.
2018-10-22 10:17:31 +02:00
Khaled Hosny cc6e77ca98 [color] Fix documentation a bit 2018-10-22 10:17:31 +02:00
Ebrahim Byagowi 37ba2413c1 Minor 2018-10-22 10:17:31 +02:00
Ebrahim Byagowi 44f79b4bf8 Remove _palette_entry_count as can be done with _palette_colors 2018-10-22 10:17:31 +02:00
Ebrahim Byagowi 6795dcfc08 [test] Test hb_ot_color_has_{colr,cpal}_data 2018-10-22 10:17:31 +02:00
Ebrahim Byagowi b8ee3a0ec8 [CPAL] Add palette entry and enable palette flag API 2018-10-22 10:17:31 +02:00
Ebrahim Byagowi d4261b4bb6 Add API test for hb_ot_color_get_color_layers 2018-10-22 10:17:31 +02:00
Ebrahim Byagowi 456978d408 Address COLR/CPAL reviews and revive cpal_v1 tests 2018-10-22 10:17:31 +02:00
Ebrahim Byagowi 687f679b80 [color] Fix alpha channel value and adjust spaces 2018-10-22 10:17:31 +02:00
Ebrahim Byagowi 00e94ce24e [dump-emoji] Formatting 2018-10-22 10:17:31 +02:00
Ebrahim Byagowi e8a6f5b803 Add three macros for separating color channels 2018-10-22 10:17:31 +02:00
Khaled Hosny d4e928b142 [color] Minimal API for COLR/CPAL 2018-10-22 10:17:31 +02:00
Behdad Esfahbod 1e39833ba8 [docs] Minor 2018-10-20 16:57:36 -07:00
Behdad Esfahbod a5ad8c658d [docs] More fixes 2018-10-20 16:52:55 -07:00
Behdad Esfahbod 314b1af74f [docs] Fix warning
Fixes https://github.com/harfbuzz/harfbuzz/issues/1260
2018-10-20 16:49:16 -07:00
Behdad Esfahbod b713c13977 [kerx] Implement tuple-kerning in Format0 2018-10-20 14:56:28 -07:00
Behdad Esfahbod 0a3b7a0fb0 2.0.2 2018-10-20 13:14:07 -07:00
Behdad Esfahbod 68b7050768 [kerx] Fix sanitize of KerxSubtableFormat2::array read
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11033
2018-10-20 12:20:57 -07:00
Behdad Esfahbod 00fdbca4f6 [aat] Fix LookupFormat10 sanitize
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11060
2018-10-20 12:20:57 -07:00
Ebrahim Byagowi 1e55e21dea
Merge pull request #1283 from khaledhosny/cygwin
Cygwin fixes and CI build
2018-10-20 07:45:46 +03:30
Behdad Esfahbod 7c2c8ac301 2.0.1 2018-10-19 19:39:58 -07:00
Bruce Mitchener 5a24ea15e0 Make more 'coords' params const. 2018-10-19 19:15:42 -07:00
Behdad Esfahbod 08b7172969 [font] Fix parallel funcs passing to eachover in infinite-loop
Fixes test just added.
2018-10-19 19:12:33 -07:00
Behdad Esfahbod 29d877518f [kerx] Implement variation-kerning tables (without the variation part)
SFSNDisplay uses these.  We just apply the default kern without
variations right now.  But at least makes the default kern work.
2018-10-19 16:06:54 -07:00
Behdad Esfahbod f7c0b4319c [aat] Implement LookupFormat10 2018-10-19 15:23:49 -07:00
Khaled Hosny 30cbe6158d Use O_BINARY instead of _O_BINARY
Cygwin does not seem to have the later
2018-10-19 22:46:40 +02:00
Behdad Esfahbod 79b6356155 [trak] Fix extrapolation at end side 2018-10-19 11:00:20 -07:00
Behdad Esfahbod 2352cc3539 [kerx] Whitespace 2018-10-19 10:17:02 -07:00
Ebrahim Byagowi 114f66dda6 Fix hb_map_is_empty logic
This needs reviewing
2018-10-19 20:23:36 +03:30
Ebrahim Byagowi 9df2fb1611 Add API tests for hb_map_t 2018-10-19 20:23:36 +03:30
Ebrahim Byagowi c6eb5e852c Don't report deprecated symbols as unused symbols 2018-10-19 20:23:36 +03:30
Bruce Mitchener 4594730f64 Remove redundant return at end of void-returning function. 2018-10-19 18:17:18 +02:00
Bruce Mitchener 8d1e479d1d Use bool literals instead of 0/1. 2018-10-19 18:05:46 +02:00
Bruce Mitchener 257d0e5aa3 Fix typos. 2018-10-19 19:24:05 +03:30
Behdad Esfahbod 3d9a0306eb 2.0.0 2018-10-18 05:58:17 -07:00
Ebrahim Byagowi 03e144135b
[ubsan] Use unsigned int instead enum where needed (#1270)
Actually the check is right,

On -myanmar.hh, on that particular switch, OT_C is indic_category_t
but OT_D is myanmar_category_t so we are mixing the types in one variable.

And on -arabic.cc, step can goes one number higher than step_t enum in the
loop so we are actually using it as an unsinged int.
2018-10-18 11:06:37 +03:30
Behdad Esfahbod f1ced9be37 More warning fix
Okay, let's see if the gods are happy now...
2018-10-17 23:06:53 -07:00
Behdad Esfahbod 40606abd0c Fix build 2018-10-17 23:06:37 -07:00
Behdad Esfahbod c406aca193 Fix warning 2018-10-17 22:58:43 -07:00
Behdad Esfahbod 270a37c324 Kick bots 2018-10-17 22:42:47 -07:00
Behdad Esfahbod 6da8ef3f9f Fix some wierdness... 2018-10-17 22:37:34 -07:00
Behdad Esfahbod 83780308b4 [aat] Fix sanitize slowdown
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11034
2018-10-17 22:34:16 -07:00
Behdad Esfahbod 9e8a9b846e [aat] Another try at fixing Lookup null objects...
Ugly as hell, and don't even understand why some bits are needed.
But the logic is sound.
2018-10-17 21:45:27 -07:00
Behdad Esfahbod 9d42d70269 [trak] Fix calc
We were getting the first track record always.  Ie. this line:

       if (trackTable[i].get_track_value () == 0.f)
       {
-       trackTableEntry = &trackTable[0];
+       trackTableEntry = &trackTable[i];
        break;
       }

The rest is cleanup.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1263 for the most part.
2018-10-17 17:55:47 -07:00
Behdad Esfahbod 2e7c716511 [buffer] Add an assert
See if it helps debugging https://bugs.chromium.org/p/chromium/issues/detail?id=895117
2018-10-16 18:35:03 -07:00
Behdad Esfahbod 25fe7e7e10 [aat] Comment 2018-10-16 18:22:54 -07:00
HinTak 26092bb3d1 "allow-none" annotation for "out" parameters
Fixes the following warnings:
hb-ot-tag.cc:330: Warning: HarfBuzz: invalid "allow-none" annotation: only valid for pointer types and out parameters
hb-ot-tag.cc:334: Warning: HarfBuzz: invalid "allow-none" annotation: only valid for pointer types and out parameters
2018-10-16 17:36:10 -07:00
HinTak 49bdb54427 typo in gobject annotation - "in/out" should be "inout"
"in/out" should be "inout"
2018-10-16 16:41:12 -07:00
Behdad Esfahbod 36f38ea703 [gpos] Protect mark attachment against out-of-bounds
Not sure how can happen, but does...
2018-10-16 16:24:03 -07:00
Behdad Esfahbod 12cbe195ae [aat] Another non-null offset 2018-10-16 16:13:53 -07:00
Behdad Esfahbod 87205ef935 [aat] Make sure Lookup offset is never nulled
It has unbounded size...

Fixes https://oss-fuzz.com/v2/testcase-detail/5718889451749376
2018-10-16 15:41:00 -07:00
Behdad Esfahbod 2137582c96 [morx] Reword ligation
Still fails MORX-41.  Am talking to Sascha to better understand what CoreText
is doing.
2018-10-16 14:46:07 -07:00
Behdad Esfahbod c53a25c657 [morx] Comment 2018-10-16 13:57:35 -07:00
Behdad Esfahbod 5eb7e7f646 Revert "[vector] Simplify Sort" and "More of the same"
This reverts commit de0b9a4664.
This reverts commit 921f0e6ec7.

Annnnd, revert.  MSVC doesn't like it.
2018-10-16 13:33:14 -07:00
Behdad Esfahbod 661340c475 [kern] Scale kern pairs before applying
Fixes https://github.com/harfbuzz/harfbuzz/issues/1255
Fixes https://github.com/harfbuzz/harfbuzz/issues/1252
2018-10-16 13:24:29 -07:00
Behdad Esfahbod de0b9a4664 [vector] More of the same 2018-10-16 13:01:27 -07:00
Behdad Esfahbod 921f0e6ec7 [vector] Simplify sort
Hopefully this fits fine with SFINAE with all our compilers.
2018-10-16 13:01:27 -07:00
Ebrahim Byagowi 42b75dc3a7
[kerx] Minor, remove debug bit 2018-10-16 10:58:09 +03:30
Behdad Esfahbod 11703afce6 [kerx] Fix Format6 sanitize
Fixes https://oss-fuzz.com/v2/testcase-detail/5650286710882304
2018-10-15 21:17:08 -07:00
Behdad Esfahbod 4c27da7638 [CBDT] Fix more offsetting
Fixes https://oss-fuzz.com/v2/testcase-detail/5750379279548416
2018-10-15 19:46:45 -07:00
Behdad Esfahbod 0f85edb778 [morx] Another end-of-text corner case
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10990
2018-10-15 11:15:54 -07:00
Behdad Esfahbod 55d5ea666c [kerx] Merge clusters in Ligature 2018-10-15 11:05:10 -07:00
Behdad Esfahbod bb35725cd7 [kerx/morx] More end-of-text protection 2018-10-15 11:05:10 -07:00
Ebrahim Byagowi 8f3048a1f8
[dump-emoji] minor 2018-10-15 12:16:47 +03:30
Ebrahim Byagowi 27e095a613 [dump-emoji] better explaination of the usage 2018-10-15 01:41:49 -07:00
Behdad Esfahbod 8dc6296818 [ot-font] Implement TrueType v_origin
Fixes https://github.com/harfbuzz/harfbuzz/issues/537
2018-10-15 01:09:05 -07:00
Behdad Esfahbod 6e07076fd0 [blob] Fix UBSan error 2018-10-14 22:22:45 -07:00
Behdad Esfahbod fc812faaa9 [CBDT] Fix more offsetting issues
Fixes https://github.com/harfbuzz/harfbuzz/issues/960

dump-emoji still segfaults.  Needs debugging.
2018-10-14 21:32:25 -07:00
Behdad Esfahbod 6aee3bb87c [CBDT] Fix offset handling
Fixes https://github.com/harfbuzz/harfbuzz/issues/960
2018-10-14 21:08:42 -07:00
Behdad Esfahbod da744c6b3e [CBDT] More UnsizedArrayOf cleanup 2018-10-14 20:51:45 -07:00
Behdad Esfahbod 2995b4465b [CBDT] Simplify sanitize 2018-10-14 20:37:57 -07:00
Behdad Esfahbod 1c76c8f6ff [morx] Handle end-of-text conditions in Insertion
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10955
2018-10-14 19:39:31 -07:00
Behdad Esfahbod 60c1397673 [buffer] Fix output_glyph at end of buffer
Part of https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10955
2018-10-14 19:38:14 -07:00
Behdad Esfahbod 7efa38257b [aat] More protection against buffer fail 2018-10-14 19:30:44 -07:00
Behdad Esfahbod e1add2a275 [hmtx] Whitespace 2018-10-14 16:26:03 -07:00
Behdad Esfahbod 62376a7d98 Ignore signed-integer-overflow while kerning
Fixes https://github.com/harfbuzz/harfbuzz/issues/1247
2018-10-14 15:20:50 -07:00
Behdad Esfahbod 40f2b9355c [kerx] Fix Format1 sanitize
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10948
2018-10-14 14:56:32 -07:00
Behdad Esfahbod 44af1f93ee [aat] Whitespace 2018-10-14 14:52:17 -07:00
Behdad Esfahbod 56b8dd17f6 [aat] Finish off massaging table 2018-10-13 19:03:33 -04:00
Behdad Esfahbod e0c5e0d91b [aat] WIP remove feature mapping here from hb-coretext
Need to map enum values to numerics since we don't have CoreText headers.
2018-10-13 18:46:52 -04:00
Behdad Esfahbod cb05774913 [coretext] Prepare AAT feature mapping to be moved 2018-10-13 17:03:32 -04:00
Behdad Esfahbod de6e414c56 [kerx] Sanitize more 2018-10-13 13:48:22 -04:00
Behdad Esfahbod 71f76f2f39 [kerx] Fix-up previous commit
A "&" was missing.  Go back to using pointers that are less error-prone.
2018-10-13 13:36:27 -04:00
Behdad Esfahbod 6d4b054234 [kerx] Use sanitizer instead of handcoded runtime sanitization 2018-10-13 12:20:33 -04:00
Behdad Esfahbod 5733113662 [kerx] Wire up context down to get_kerning 2018-10-13 12:16:12 -04:00
Behdad Esfahbod c4502833b7 [kerx] Use sanitizer.get_num_glyphs() instead of face->get_num_glyphs() 2018-10-13 12:09:59 -04:00
Behdad Esfahbod fc45e698f2 [kerx] Protext against overflows 2018-10-13 12:09:59 -04:00
Behdad Esfahbod ed2ee78136 [hangul] Fix use-after-free issue
out_info might have moved since we copied it's position into local
info var.

Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=894937
2018-10-13 12:09:59 -04:00
Ebrahim Byagowi 63109432cf Cosmetic and minor changes 2018-10-13 07:23:33 -04:00
Behdad Esfahbod c0a6814b49 Touch up new API
New API:
+hb_ot_layout_feature_get_name_ids()
+hb_ot_layout_feature_get_characters()
2018-10-12 16:06:39 -04:00
Behdad Esfahbod 477bc9aafe Add hb-ot-name.h
Actual name-fetching API to come later.

New API:
hb_name_id_t
HB_NAME_ID_INVALID
2018-10-12 16:06:39 -04:00
Ebrahim Byagowi dc49bd8d81 Add two APIs for getting stylistic set labels
* hb_ot_layout_feature_get_characters
* hb_ot_layout_feature_get_name_ids

However HarfBuzz currently doesn't expose an API for retrieving the actual
information associated with NameId from the `name` table and that should be
done separately.
2018-10-12 16:06:39 -04:00
Behdad Esfahbod e9f9c0d81c [sanitize] Reorder condition to silence bogus gcc warning
Was givin a dozen of:

../../src/hb-machinery.hh: In member function ‘bool AAT::ankr::sanitize(hb_sanitize_context_t*) const’:
../../src/hb-machinery.hh:307:23: warning: missed loop optimization, the loop counter may overflow [-Wunsafe-loop-optimizations]
     bool ok = --this->max_ops > 0 &&
               ~~~~~~~~~~~~~~~~~~~~~~
        this->start <= p &&
        ~~~~~~~~~~~~~~~~~~~
        p <= this->end &&
        ~~~~~~~~~~~~~~~^~
        (unsigned int) (this->end - p) >= len;
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I believe those are bogus, but this silences them and does not introduce
logic issues I believe.
2018-10-12 16:06:39 -04:00
Behdad Esfahbod 1a6b5ac6c3 Add HB_DEPRECATED_FOR and mark relevant symbols 2018-10-12 16:06:39 -04:00
Behdad Esfahbod c9413d7bb5 [graphite] Add HB_DEPRECATED annotation 2018-10-12 16:06:39 -04:00
Behdad Esfahbod 68c86af187 Always compile deprecated symbols
We haven't been keeping this updated.  So, while we don't expose the
symbols in the headers if HB_DISABLE_DEPRECATED is defined, we still
always build them.
2018-10-12 16:06:39 -04:00
David Corbett c55100000b Add missing colons to GObject annotations 2018-10-11 22:47:35 -04:00
David Corbett 1e816d62ef Fix Indic script tags in Graphite 2018-10-11 20:51:08 -04:00
Behdad Esfahbod bf8469be9a Attach CursivePositioning backwards, not forward
This is how Uniscribe does it.  So, adjust.  This is only relevant
to fonts that apply cursive positioning from a contextual lookup.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1181
2018-10-11 20:45:40 -04:00
Behdad Esfahbod bdb53ca24a [myanmar] Implement Zawgyi shaper
Enabled if script tag 'Qaag' is passed to HarfBuzz.  Disables mark
advance-zeroing and fallback mark-positioning.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1162
2018-10-11 20:20:29 -04:00
Behdad Esfahbod 00c5c4a79d [myanmar] Shuffle 2018-10-11 20:15:31 -04:00
Behdad Esfahbod ec8f493bf9 [graphite] Remove assert 2018-10-11 20:15:00 -04:00
Behdad Esfahbod 5646dcbd11 Minor 2018-10-11 19:39:07 -04:00
Behdad Esfahbod 654365dc89 Pass indic3 tags to USE shaper
Fixes https://github.com/harfbuzz/harfbuzz/issues/539
2018-10-11 17:51:21 -04:00