7028 Commits

Author SHA1 Message Date
Behdad Esfahbod
0670e1a6f5 [iter] Remove excess use of universal references
Every time I have to study these to understand why a change is right..
2019-02-14 11:53:40 -08:00
Behdad Esfahbod
773d75637c [iter] Add hb_apply() 2019-02-14 11:40:22 -08:00
Behdad Esfahbod
00db94095d [iter] Make hb_filter() a function-object 2019-02-14 11:10:13 -08:00
Behdad Esfahbod
aa4c321262 [iter] Make hb_zip() a function-object 2019-02-14 11:07:12 -08:00
Behdad Esfahbod
f8fcfb263e [iter] Accept pointers to hb_sink() 2019-02-14 11:03:29 -08:00
Behdad Esfahbod
b530573ad9 [iter] Make hb_sink function-object 2019-02-14 11:00:10 -08:00
Behdad Esfahbod
bb139cb8d0 [iter] Back to dagger formatting for pipelines 2019-02-14 10:52:02 -08:00
Behdad Esfahbod
5fa52e62b1 [iter] Accept iterator, not iterable, in hb_sink()() 2019-02-14 10:51:02 -08:00
Behdad Esfahbod
0f292ea85f [iter] Accept iterator, not iterable, in hb_filter()() 2019-02-14 10:49:31 -08:00
Behdad Esfahbod
345bfbb207 [iter] Accept iterator, not iterable, in hb_map()() 2019-02-14 10:48:20 -08:00
Behdad Esfahbod
16cc313dcd [iter] Use hb_sink() 2019-02-14 10:40:05 -08:00
Behdad Esfahbod
b702a0cbf8 [iter] Add hb_sink() 2019-02-14 10:39:58 -08:00
Michiharu Ariza
1cb1d5d7fb Merge branch 'master' into cff-more-arrayof-fixes 2019-02-14 10:09:19 -08:00
Michiharu Ariza
6f1dfd082c Merge branch 'master' into cff-retain-gids 2019-02-14 10:08:16 -08:00
Behdad Esfahbod
7d2376de33 Merge branch 'master' into iter 2019-02-13 22:13:37 -08:00
Ebrahim Byagowi
890d0ee77f
Minor, use a meaningful naming in template parameter (#1582) 2019-02-14 00:27:01 +03:30
Michiharu Ariza
8a568a8858 Merge branch 'master' into cff-more-arrayof-fixes 2019-02-13 11:25:00 -08:00
Michiharu Ariza
b1dbc77fa6 Merge branch 'master' into cff-retain-gids 2019-02-13 11:24:38 -08:00
Ebrahim Byagowi
1e1d0e63df
Fix djgpp complains by tweaking templates (#1579)
For some reasons djgpp doesn't understand "unsigned int" can be same
with one of uint*_t anyway so lets do that for it explicitly.

Just to note, our CI's djgpp is based GCC 7.2.0 and isn't old.
2019-02-13 12:58:01 +03:30
Michiharu Ariza
bc33c617b8 Merge branch 'master' into cff-retain-gids 2019-02-12 15:10:50 -08:00
Michiharu Ariza
c6af846178 tweaked --desubroutinize to remove hintmask only subrs 2019-02-12 15:10:43 -08:00
Michiharu Ariza
c83412e4ce Merge branch 'master' into cff-more-arrayof-fixes 2019-02-11 14:16:25 -08:00
Ken
fdfa3d29b7 hb-coretext.cc: remove TARGET_OS_MAC from test (#1578)
it is always true when building on APPLE systems
and this file only builds on APPLE systems
2019-02-11 11:16:05 +03:30
Michiharu Ariza
e2856c2d85 retain FDSelect & FDArray with --retain-gids
so in sync with fonttools behavior
2019-02-07 15:32:32 -08:00
Michiharu Ariza
1239b6b2b4 Merge branch 'master' into cff-more-arrayof-fixes 2019-02-07 10:29:40 -08:00
Michiharu Ariza
a5fa76977b Merge branch 'master' into cff-retain-gids 2019-02-07 10:28:13 -08:00
Michiharu Ariza
214d0b024b minor change 2019-02-07 10:27:43 -08:00
Ken Cunningham
7859decdd0 hb-coretext.cc: clean up macosx test
TARGET_OS_OSX was introduced only in late OS versions
so always returns as "0" on older systems.

if !TARGET_OS_IPHONE can work, as it returns as !0 on older
systems where TARGET_OS_IPHONE is not defined, but is not
specific

if TARGET_OS_MAC && !(defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
is both specific and accurate on all systems.
2019-02-05 20:26:49 -08:00
Michiharu Ariza
30b781f20a Merge branch 'master' into cff-retain-gids 2019-02-01 14:50:34 -08:00
Michiharu Ariza
c12862657f added desubroutinize & retain-gids full test cases with CFF fonts
and CFF retain-gids fixes
2019-02-01 14:50:01 -08:00
Michiharu Ariza
f2908b4d8f Implement subset --regain-gids option with CFF1/2
along with api tests & expected results
2019-01-31 14:16:37 -08:00
Behdad Esfahbod
1e06282105 Adjust hb_is_signed<>
Fixes https://github.com/harfbuzz/harfbuzz/issues/1535
2019-01-31 13:57:17 -08:00
Behdad Esfahbod
21ea1c9152 Remove stale comment 2019-01-31 13:57:17 -08:00
Michiharu Ariza
9f80eb0177 Merge branch 'master' into cff-more-arrayof-fixes 2019-01-31 12:54:36 -08:00
Behdad Esfahbod
2d940946d5 [iter] Fix mystery crash
Fuzzer caught it:

==14==ERROR: AddressSanitizer: stack-use-after-return on address 0x7fca2ed7a3e0 at pc 0x0000006057aa bp 0x7ffc3290f1d0 sp 0x7ffc3290f1c8
READ of size 4 at 0x7fca2ed7a3e0 thread T0
SCARINESS: 55 (4-byte-read-stack-use-after-return)
    #0 0x6057a9 in OT::SingleSubstFormat2::subset(hb_subset_context_t*) const /src/harfbuzz/src/./hb-ot-layout-gsub-table.hh:194:40
    #1 0x5ff921 in hb_subset_context_t::return_t OT::SingleSubst::dispatch<hb_subset_context_t>(hb_subset_context_t*) const /src/harfbuzz/src/./hb-ot-layout-gsub-table.hh:256:13

I can't reproduce locally, but many of the bots are failing because of this
as well.

It's a pity that operator-> must return pointer.  Ugh.  Why?!
2019-01-30 16:03:16 -08:00
Behdad Esfahbod
cbe2118c58 Merge branch 'master' into iter 2019-01-30 15:07:09 -08:00
Behdad Esfahbod
7c292c0853 [iter] Warning fix
Not sure why I don't get it, but this warning:

warning: base class ‘struct hb_iter_fallback_mixin_t<hb_array_t<const OT::UVSMapping>, const OT::UVSMapping&>’ should be explicitly initialized in the copy constructor [-Wextra]
2019-01-30 14:54:23 -08:00
Behdad Esfahbod
d983c529b6
Merge pull request #1564 from googlefonts/retain_gids
[subset] Add --retain-gids option to the subsetter.
2019-01-30 17:17:59 -05:00
Behdad Esfahbod
55d1d7c8bc 2.3.1 2019-01-30 13:54:15 -08:00
Behdad Esfahbod
e799004e9f [iter] Whitespace 2019-01-29 17:15:12 -08:00
Behdad Esfahbod
849a0f1758 [iter] Add hb_iter_with_fallback_t instead 2019-01-29 17:10:19 -08:00
Behdad Esfahbod
4d40ed9d1a [iter] Add hb_iter_with_mixin_t<> 2019-01-29 13:55:23 -08:00
Behdad Esfahbod
6521d5b201 [iter] Export operator << / >> 2019-01-29 13:44:39 -08:00
Behdad Esfahbod
84a25d79c6 [iter] Rename 2019-01-29 13:39:19 -08:00
Garret Rieger
198859bb37 [subset] For retain gids don't truncate glyphs past the highest requested subset glyph. 2019-01-29 13:19:21 -08:00
Garret Rieger
05e99c86ba [subset] A few small fixes for the new subset plan api. 2019-01-29 13:19:21 -08:00
Garret Rieger
bdbe047d6c [subset] Update hb-subset-plan.cc to match hb-subset-plan.hh. 2019-01-29 13:19:21 -08:00
Garret Rieger
74c44ffeba [subset] Update hb-subset-glyf.cc to use new hb-subset-plan API. 2019-01-29 13:19:21 -08:00
Garret Rieger
4842294b86 [subset] Update gsub to use glyphset() method of subset plan. 2019-01-29 13:19:21 -08:00
Garret Rieger
853b1f1aa5 [subset] Correct maxp num glyph's to use new subset plan method. 2019-01-29 13:19:21 -08:00