|
cc3f4e00
|
2018-08-03T15:00:37
|
|
silence gcc
|
|
00970dd2
|
2018-08-03T14:35:09
|
|
Removed parsed hint fields from CFF2PrivateDictValues
Instead moved & stored uniformly in values vector (renamed from opstrs)
This should be fine as we aren't likely going to use them as hints after all
Templatized DictValues whether to parse them out
For subsetter, they aren't parsed
|
|
76f7397c
|
2018-08-02T16:28:10
|
|
templatized CFF2 accelerator for lean Private dict interpretting for subset
also fixed local subrs serialization
|
|
43040564
|
2018-08-02T12:23:10
|
|
removed TRACE_SERIALIZE from non-member function _write_cff2
|
|
e2fd49e4
|
2018-08-02T11:39:22
|
|
Merge branch 'master' into cff-subset
|
|
693ae804
|
2018-08-02T11:22:42
|
|
more silencing fixes
|
|
f6da4498
|
2018-08-02T10:52:08
|
|
silence archlinux
|
|
58279c3d
|
2018-08-02T10:18:01
|
|
silence Codacy
|
|
d4d1bf81
|
2018-08-02T02:04:02
|
|
Fix for recent rename
|
|
91126aa1
|
2018-08-02T02:03:13
|
|
[uniscribe] Update for recent changes
|
|
66952ec4
|
2018-08-02T01:44:20
|
|
Remove unused table reference
|
|
443de26f
|
2018-08-02T01:41:19
|
|
Minor
|
|
ee35af73
|
2018-08-02T01:37:57
|
|
Make lazy-loader safe for nil objectification
|
|
6404c49d
|
2018-08-02T01:36:08
|
|
Minor
|
|
ff7826e9
|
2018-08-02T01:27:40
|
|
Reduce storage by sharing face amongst lazy_loaders
|
|
bdd3c11a
|
2018-08-02T00:38:46
|
|
Internal templatization of lazy-loaders
|
|
ed7b2e58
|
2018-08-01T23:59:09
|
|
Remove OT namespace from hb-machinery-private.hh
|
|
cb1491f9
|
2018-08-01T22:50:45
|
|
Minor
|
|
16ccfafb
|
2018-08-01T22:50:06
|
|
[face] Sprinkle const in the API
|
|
3d22aefe
|
2018-08-01T18:03:32
|
|
Rename
|
|
1a624c6e
|
2018-08-01T17:53:30
|
|
Add comment re (our only) race condition
|
|
19ce0b24
|
2018-08-01T17:34:59
|
|
removed unused field OpStr::update
|
|
3bda54c4
|
2018-08-01T16:32:27
|
|
fixed Index::serialize
The bug was causing CharString of the last glyph corrupt
|
|
16f4dc9b
|
2018-08-01T16:06:52
|
|
fixed CFF2VariationStore::serialize
also get_size
|
|
44d1fb37
|
2018-08-01T14:51:51
|
|
1.8.5
|
|
13f4c137
|
2018-08-01T14:13:59
|
|
[atomic] Fix Solaris ones to add proper barriers
|
|
19dfaa35
|
2018-08-01T14:02:39
|
|
[atomic] Remove volatile from IBM impl signature
|
|
2093a3e0
|
2018-08-01T14:00:46
|
|
[atomic] Oops
|
|
19b98348
|
2018-08-01T13:59:59
|
|
[atomic] Use read-barrier for get()
|
|
006d4f03
|
2018-08-01T13:59:31
|
|
[atomic] Some more minor tweaks
|
|
b2ff582c
|
2018-08-01T11:30:38
|
|
Implemented hb_subset_cff2
Added serialize functions to CFF2 structs
Fixed issues & bugs & code cleanup
Now subsetting CFF2 table outputs something
|
|
1a7fed63
|
2018-08-01T12:15:44
|
|
Revert "Add a new API, hb_ot_layout_get_feature_name_ids (#976)" (#1121)
This reverts commit 0c1b287b72e91e0898d75acb5d5acf1c6b9a7498.
|
|
dfc86e4b
|
2018-08-01T00:22:18
|
|
[atomic] Fix cast to fallback ptr_get()
|
|
7a4d576e
|
2018-08-01T00:19:25
|
|
[gobject] Fix copy/paste error
|
|
ad275627
|
2018-07-31T23:01:05
|
|
[atomic] On IBM, use light-weight sync for everything
lwsync() is a full read/write-barrier. That's all we need, never
need sync(). I'm not sure why an isync() was used in fetch_and_add,
but since that's a read-modify-write, I just changed it to have
lwsync() on both sides.
|
|
fd638d21
|
2018-07-31T23:00:15
|
|
[atomic] Add XXX items around Solaris ops
Since add_int and cas are both read-modify-write, I wonder if we
also need a barrier after them.
|
|
896ff15a
|
2018-07-31T22:51:38
|
|
[atomic] Fix get() impl
Originally, glib's atomic_get was implemented as "memory_barrier; load".
I copied this into cairo, fontconfig, and harfbuzz. However, that's
wrong. Correct way is "load; memory_barrier". The details are long
and hard to fully grasp. Best to read:
https://www.kernel.org/doc/Documentation/memory-barriers.txt
Also see my report against GNOME:
https://gitlab.gnome.org/GNOME/glib/issues/1449
Note that this is irrelevant if C++11-like atomic ops are available.
|
|
d7a15799
|
2018-07-31T22:28:28
|
|
[gobject] Hook up hb_map_t
|
|
63c74e8d
|
2018-07-31T22:21:21
|
|
[atomic] Fix fallback impl
|
|
4bc16aca
|
2018-07-31T21:05:51
|
|
[atomic] Add get_relaxed / set_relaxed
To help TSan and be more "correct".
|
|
3dd1b887
|
2018-07-31T19:33:37
|
|
[atomic] Use CONSUME, not ACQUIRE, memory-order for get()
Although, all implementations just elevate that to ACQUIRE.
But requirement for us is just CONSUME.
|
|
06b91d93
|
2018-07-31T19:29:49
|
|
Revert "[atomic] Make pointer get op relaxed instead of acquire"
This reverts commit b1e5650c67266dc158f22355fed206cd1c413f70.
After lots of head-scratching and finally finding the only truly
readable source to be the good old:
https://www.kernel.org/doc/Documentation/memory-barriers.txt
I've convinced myself that we need consume memory-ordering on get().
The location of memory-barrier in a load should be after, not before
the load. That needs fixing. I'll do that separately.
|
|
2bdd903c
|
2018-07-31T17:44:02
|
|
[subset] limit the max codepoint value to the unicode limit.
When collecting all codepoints in the cmap avoid using large amount of memory for fonts that declare coverage over all 32 bit integers.
|
|
89733755
|
2018-07-30T18:10:43
|
|
[subset] use add_array to populate feature_indexes.
This is much faster then calling a bunch of individual add()'s.
|
|
7d92bef9
|
2018-07-30T17:17:43
|
|
[subset] collect features first, then use those to collect lookups.
|
|
af876cce
|
2018-07-31T15:27:29
|
|
[indic] Flip default logic for double-halants in old-school
Oriya went down from 9 to 2.
BENGALI: 353725 out of 354188 tests passed. 463 failed (0.130722%)
DEVANAGARI: 707311 out of 707394 tests passed. 83 failed (0.0117332%)
GUJARATI: 366355 out of 366457 tests passed. 102 failed (0.0278341%)
GURMUKHI: 60729 out of 60747 tests passed. 18 failed (0.0296311%)
KANNADA: 951300 out of 951913 tests passed. 613 failed (0.0643966%)
MALAYALAM: 1048136 out of 1048334 tests passed. 198 failed (0.0188871%)
MYANMAR: 1115830 out of 1123883 tests passed. 8053 failed (0.716534%)
ORIYA: 42327 out of 42329 tests passed. 2 failed (0.00472489%)
SINHALA: 271596 out of 271847 tests passed. 251 failed (0.0923313%)
TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%)
TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)
|
|
92ba9905
|
2018-07-31T15:19:32
|
|
[indic] Allow double-halant in old-spec Devanagari
Fixes https://github.com/harfbuzz/harfbuzz/issues/1071
|
|
5772edc0
|
2018-07-31T14:10:31
|
|
[khmer] Typo
|
|
6ddd669e
|
2018-07-31T13:38:07
|
|
[khmer] Clear syllables before presentation features
Probably not what Uniscribe does, but good idea?
|
|
8eef1964
|
2018-07-31T13:35:10
|
|
[khmer] Revert previous change, and remove pauses
This makes test suite happy again (at 44) while fixing the sequences
we were fixing, which were the following with KhmerUI.ttf:
U+1789,U+17BC
U+1789,U+17D2,U+1789
U+1789,U+17D2,U+1789,U+17BC
Fixes rest of https://github.com/harfbuzz/harfbuzz/issues/974
|
|
7c658ea2
|
2018-07-31T12:49:02
|
|
[khmer] Apply ccmp after basic features
Part of https://github.com/harfbuzz/harfbuzz/issues/974
|
|
1a96cc82
|
2018-07-31T11:45:32
|
|
[khmer] Rewrite most of shaper to better follow spec
Khmer spec has only one reordering phase, and only simple prebase
matra and Coeng-Ro reordering. Implement that. Specifically,
this was done to address recognizing different orders of the matra
and Coeng-Ro sequence. That said, some combinations are now
reordered differently from Uniscribe. Not clear if that's intended
or a bug in Uniscribe. The following two sequences render the same
in Uniscribe whereas we reorder them differently:
U+17A0,U+17D2,U+179A,U+17C2
U+17A0,U+17C2,U+17D2,U+179A
For that reason, our test suite numbers regressed slightly. Used
to be at 34 for fails, now at:
KHMER: 299080 out of 299124 tests passed. 44 failed (0.0147096%)
But generally a good change, and removed lots of code.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1026
|
|
f5152cea
|
2018-07-31T01:27:04
|
|
[shaper] Move code around
|
|
36d0fbbc
|
2018-07-31T01:15:04
|
|
[shaper] Remove a macro
|
|
b1e5650c
|
2018-07-31T01:02:31
|
|
[atomic] Make pointer get op relaxed instead of acquire
We only use it before cmpexch, so relaxed is fine and faster for
common case.
|
|
66ccd8ac
|
2018-07-30T17:03:06
|
|
[serialize] Increase stage count from 8 to 32
Indic shaper uses many stages. Now we are provably not limiting
functionality whereas the previous limit of 8 was assuming real-world
practices.
|
|
ee8cf919
|
2018-07-30T16:59:41
|
|
[serialize] Remove unused truncate() method
|
|
8782f80c
|
2018-07-30T15:27:20
|
|
fixed FDSelect0::sanitize
|
|
9c4cadae
|
2018-07-30T14:28:40
|
|
Added sanitize functions & calls
Added sanitize functions to FDSelect
Added satnitize calls for FDSelect, VariationStore, FDArray, TopDict
|
|
161b642e
|
2018-07-30T12:22:09
|
|
Merge branch 'master' into cff-subset
|
|
5edf454a
|
2018-07-26T17:42:02
|
|
[subset] During lookup collection remember the features we've already processed.
|
|
42c183f8
|
2018-07-27T14:55:29
|
|
Minor
|
|
ecab6604
|
2018-07-25T17:37:38
|
|
[serialize] Allocate for markFilteringSet
|
|
7f08818c
|
2018-07-25T17:22:05
|
|
Minor
|
|
2e25d8f4
|
2018-07-27T13:58:27
|
|
Fix unlikely leaks
|
|
3c2842cb
|
2018-07-25T17:07:17
|
|
Add hb-iter-private.hh
Unused so far.
|
|
92b1e025
|
2018-07-25T16:58:47
|
|
Move some code from hb-open-type-private.hh to hb-machinery-private.hh
|
|
6b11fea9
|
2018-07-25T16:01:37
|
|
[closure] Allocate out set on the stack
|
|
74467b79
|
2018-07-25T14:30:07
|
|
Fix compile
|
|
bf90f353
|
2018-07-24T18:00:14
|
|
[coretext] Add note
|
|
fb58cb4b
|
2018-07-25T13:39:17
|
|
[subset] Only used reachable lookups for gsub closure.
|
|
c38bd402
|
2018-07-24T09:43:27
|
|
[closure] Separate in and out glyphs
Fixes https://github.com/harfbuzz/harfbuzz/issues/1107
|
|
85646fda
|
2018-07-23T15:37:18
|
|
[subset] Limit the iterations of the closure algorithm.
Prevents O(n^2) run times.
|
|
94759d4c
|
2018-07-23T15:01:39
|
|
Fix visibility on mingw32
Should fix bots again.
|
|
61eddbd8
|
2018-07-23T14:44:10
|
|
Fix infinite loop in loading num_glyphs within sanitizer
|
|
e22a48ac
|
2018-07-23T13:24:26
|
|
One more visibility trick
Should fix Windows build again.
|
|
e57a638b
|
2018-07-23T12:00:02
|
|
One more
|
|
36ed163f
|
2018-07-23T11:57:45
|
|
Remove unnecessary OT:: namespace specifiers
|
|
c6bc7c38
|
2018-07-23T11:46:46
|
|
Set num glyphs on sanitizer reference_table()
Move out-of-class definitions of two methods to hb-static so they
are accessible in libharfbuzz-subset.
|
|
9401829d
|
2018-07-22T22:50:58
|
|
Remove Sanitizer<>
|
|
8e3e4127
|
2018-07-22T22:49:26
|
|
Port rest of code away from Sanitizer<>
|
|
d6a8f640
|
2018-07-22T22:47:19
|
|
Port dump-emoji away from Sanitizer<>
|
|
14f78d2b
|
2018-07-22T22:45:26
|
|
.
|
|
4547051f
|
2018-07-22T22:44:22
|
|
Minor
|
|
740ae27d
|
2018-07-22T22:40:56
|
|
Port sbix off of Sanitizer<>
|
|
9583e007
|
2018-07-22T22:40:32
|
|
Port more off of Sanitizer<>
|
|
e7737b41
|
2018-07-22T22:24:31
|
|
Add sanitizer reference_table, also fix clang build
Clang is being really peculiar. Fix with:
- inline hb_blob_t *sanitize (hb_blob_t *blob) { return c->sanitize<Type> (blob); }
+ inline hb_blob_t *sanitize (hb_blob_t *blob) { return c[0].template/*clang idiosyncrasy*/sanitize_blob<Type> (blob); }
|
|
62fa7cd1
|
2018-04-13T18:45:37
|
|
Order Chakma split vowels in accordance with NFC
Fixes #1105.
|
|
0c1b287b
|
2018-07-21T21:14:48
|
|
Add a new API, hb_ot_layout_get_feature_name_ids (#976)
This new API returns cvXX and ssXX related NameId, things like
featUiLabelNameId, featUiTooltipTextNameId, sampleTextNameId, ... of cvXX
and UINameId of ssXX, in a unified way.
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.
|
|
3a61c3e9
|
2018-07-18T14:17:52
|
|
first push of CFF/CFF2 work
Index, Dict structs
hooked up to hb-subset (takes CFF2, outputs empty CFF2)
|
|
93b65d9f
|
2018-07-17T23:29:16
|
|
Remove dump-fon (#1100)
It had interesting stuffs like EXE parsing and
big-endian parsers but added in an attempt to find
a solution for #681 which later found not related.
|
|
d5cd47a6
|
2018-07-17T22:32:37
|
|
Remove AAT's gcid/fmtx (#1099)
We are not going to use them, at least in the foreseeable future
|
|
1e9e344b
|
2018-07-17T19:17:59
|
|
Fix hb_face_count() sanitize referencing
|
|
a8cc0b59
|
2018-07-17T19:09:03
|
|
Remove TODO that is not gonna be done
Previously the idea was to cache sanitize results externally (think,
in Fontconfig) and avoid resanitizing every time. That's, not a good
idea.
|
|
be707384
|
2018-07-17T18:45:25
|
|
Move sanitizer code around a bit
|
|
db5d430e
|
2018-07-17T18:14:45
|
|
[aat] Update for blob changes
Also, uncomment code again, just "if (0)" it out, so it doesn't get stale again.
|
|
68310a65
|
2018-07-17T13:20:40
|
|
1.8.4
|
|
04b7b81b
|
2018-07-17T10:57:01
|
|
Reland "Implement C++11-style GCC builtin atomic ops"
Fixed the crasher in it.
|
|
019d18e9
|
2018-07-17T10:59:19
|
|
Minor
|
|
3edef5a1
|
2018-07-17T10:50:01
|
|
Revert "Implement C++11-style GCC builtin atomic ops"
This reverts commit 21fa170f0bfb0109c506ed17f5aff8b062564ffa.
Is crashing. Oops.
|