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
c46d42f8f2
[test/text-rendering-tests] Update from upstream
2018-10-16 13:39:54 -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
61510b63c1
[test] Minor cleanup in test-multithread and test-ot-name ( #1256 )
2018-10-16 14:17:21 +03:30
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