Behdad Esfahbod
1f88dae9f5
[iter] Make iota() accept invokable for increasing to next item
6 years ago
Behdad Esfahbod
3bc86fb237
[algs] Fix hb_inc/dec signature
6 years ago
Behdad Esfahbod
b1378d8a21
[iter] Add hb_repeat()
6 years ago
Behdad Esfahbod
966a18b92a
[iter] Remove some &&
6 years ago
Behdad Esfahbod
de45775c37
[iter] Use hb_ridentity instead of lazy +
6 years ago
Behdad Esfahbod
ce4d63beec
[iter] Separate hb_iota implementation from hb_range
6 years ago
Behdad Esfahbod
814dc3cbe5
[iter] Rename
...
Moving towards making iota useful for non-integers.
6 years ago
Behdad Esfahbod
2d5643aed4
[algs] Add hb_inc() and hb_dec())
6 years ago
Behdad Esfahbod
7eafe94705
Revert "[array] Add chop()"
...
This reverts commit 545fe9d9f0
.
Breaks gcc 4.8 and MSVC all versions.
Will add hb_chop() that works on all iterators instead.
6 years ago
Ebrahim Byagowi
28c8dcb53f
[subset] minor
6 years ago
Behdad Esfahbod
545fe9d9f0
[array] Add chop()
...
Takes n, and returns iterator of iterators that contain up to
n items each. Basically cuts the array into subarrays of size n.
The last sub-array might contain fewer.
Ideally this should become a generic iter tool, not array-specific,
so we can use it in GPOS to chop a value matrix into rows and elements.
6 years ago
Behdad Esfahbod
c72589f13f
[iter] Change item_size to get_item_size()
...
By moving access to hb_static_size(Type) into a function instead of
a class-const, we can refer to iter types of incomplete types, which
come handy when a method of hb_array_t wants to return iterator
of hb_array_t. That kind of stuff. Next commit needs this to
build on clang...
6 years ago
Behdad Esfahbod
d58e248df6
[array] Add truncate() method
6 years ago
Behdad Esfahbod
a06edf1430
[array] Use injected class name more
6 years ago
Behdad Esfahbod
e0e0c8c109
Minor
6 years ago
qxliu76
0313ef86e3
bug fix in optimizing coverage table format ( #1942 )
...
We are comparing number of shorts, NOT number of bytes.
6 years ago
Behdad Esfahbod
38f95baf6b
[subset] in SingleSubst subsetting, check for substitute in glyphset
...
That matches what fonttools does and allows for specifying exact
glyphset for subset.
6 years ago
Ebrahim Byagowi
499029644f
[gsub] Fix clang's semicolon complains
6 years ago
Ebrahim Byagowi
28620310b8
[test] Avoid alloca use as clang complain
...
Fixes https://circleci.com/gh/harfbuzz/harfbuzz/108171 complain
6 years ago
Ebrahim Byagowi
875985cd48
[subset] Don't allow malicious fonts to insert unlimited table headers
...
Fixes https://crbug.com/oss-fuzz/16810
6 years ago
Behdad Esfahbod
dc9222b1dd
[subset] Implement AlternateSubst subsetting
6 years ago
Behdad Esfahbod
23681b6da4
Minor
6 years ago
Behdad Esfahbod
33c8e2303c
[subset] Implement MultipleSubst subsetting
6 years ago
Behdad Esfahbod
5c43a7ba7e
[GSUB] Use dagger in Ligature::intersects()
6 years ago
Behdad Esfahbod
b8c642c1f5
Minor
6 years ago
Behdad Esfahbod
dc2c9aa0c3
Rename
6 years ago
Behdad Esfahbod
bc5ef765a8
[subset] Subset ligature substitutes!
...
Test with:
$ ./hb-subset -o out.ttf NotoSansArabic-Regular.ttf --drop-tables= سلام && ./hb-view out.ttf سلام
6 years ago
Behdad Esfahbod
42d887bd22
Beef up HeadlessArrayOf<>
...
Should be merged with ArrayOf...
https://github.com/harfbuzz/harfbuzz/issues/1937
6 years ago
Behdad Esfahbod
3ca809e362
Add ArrayOf::pop()
6 years ago
Behdad Esfahbod
307bd6d79f
Add arithmetic operators to IntType<>
6 years ago
Behdad Esfahbod
2e1d00c85b
[debug] Minor
6 years ago
Behdad Esfahbod
062cad5e28
Add ArrayOf::serialize_append
6 years ago
Adrian Wong
b66076812d
Adjustments to the generated Indic table output ( #1936 )
...
* Add empty parentheses after print call
* Minor: newlines. Move #pragma pop down one; #endif up one
* Adjust #define ISC/IMC output
* Regenerate Indic table
6 years ago
Ebrahim Byagowi
4ef08dbce1
Use hb_bytes_t as<T> in hb_blob_t
6 years ago
Ebrahim Byagowi
dce42cef2b
[glyf] Move GlyphHeader::from_bytes to hb_bytes_t, introduce .as<T> ()
6 years ago
Ebrahim Byagowi
6e82d59b4f
[glyf] Revert the way indexToLocFormat is set
6 years ago
Ebrahim Byagowi
88e9db19d2
[subset] Remove subset table size assertion
...
As https://github.com/harfbuzz/harfbuzz/pull/1930#issuecomment-525036802
6 years ago
Ebrahim Byagowi
a0b4ac4dce
Turn 8 spaces to tab across the project
...
According to the current code style of the project
6 years ago
Ebrahim Byagowi
269a120f13
[subset] Raise the bar in new vs old table size
...
https://crbug.com/oss-fuzz/16740
This is actually an interesting thing that {h,v}mtx allocates as
much as a font pretends to have glyphs but the solution is not
that obvious as regular fonts can have less than actually containing
metrics in their {h,v}mtx. This change raises the bar to consider this
hmtx 4 byte for every glyph case.
Initially we wanted to just find things allocating crazy amount of
memory but having the assert has led to interesting findings also
so let's don't remove the assert and see what we can find elsewhere.
6 years ago
Ebrahim Byagowi
2f8e823331
[glyf] minor
6 years ago
Ebrahim Byagowi
07e467a30e
[glyf] Move GlyphHeader size checking to a static method
6 years ago
Ebrahim Byagowi
139d14dc89
[glyf] Move GlyphHeader related logics to its, making its fields protected
6 years ago
Ebrahim Byagowi
d57819cbdb
[glyf] format source
6 years ago
Ebrahim Byagowi
2aef3013f3
[subset] Consider instruction length place itself
...
Now fixes https://crbug.com/oss-fuzz/16639 completely
6 years ago
Ebrahim Byagowi
922898c814
[subset] Fail on table grow more than 16x+4096
6 years ago
Ebrahim Byagowi
28aba780c4
[subset] Fix blob leak of _subset2 when returns early
...
Fixes https://crbug.com/oss-fuzz/16639
6 years ago
Behdad Esfahbod
541f3c2d7d
[debug] Fix extra semicolon issue
...
https://github.com/harfbuzz/harfbuzz/issues/1923
6 years ago
Behdad Esfahbod
4dcaca8411
Whitespace
6 years ago
Behdad Esfahbod
569426d861
[debug] Fix build with HB_DEBUG
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1923
6 years ago
Khaled Hosny
f233e6c801
[doc] Update list of default features in the manual
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1921
6 years ago