Behdad Esfahbod
0b1fe7b716
[serializer] Unbreak for now
2019-03-30 18:48:26 -07:00
Behdad Esfahbod
10f062234e
[map] Shuffle fini code
2019-03-30 18:44:01 -07:00
Behdad Esfahbod
e6b78003ef
[vector] Add move semantics
2019-03-30 18:33:30 -07:00
Behdad Esfahbod
4c4d3c3ed5
[vector] Add some move and forwarding
2019-03-30 18:30:50 -07:00
Behdad Esfahbod
7c9ceabcef
[meta] Add hb_move and hb_forward ala std::
2019-03-30 18:23:24 -07:00
Behdad Esfahbod
9a19b885f9
[serialize] Flesh out packing
2019-03-30 18:14:30 -07:00
Behdad Esfahbod
357c7c611c
[vector] Add copy constructor and assignment operator
2019-03-30 18:13:57 -07:00
Behdad Esfahbod
6f69c9d26f
[serialize] Minor
2019-03-30 18:00:03 -07:00
Behdad Esfahbod
a43290192b
[serialize] Add packed_map
2019-03-30 17:57:33 -07:00
Behdad Esfahbod
bed150bd2e
[serialize] Start fleshing out object stack
2019-03-30 17:43:43 -07:00
Behdad Esfahbod
63c3565189
[serialize] Simplify propagate_error()
2019-03-30 17:12:40 -07:00
Behdad Esfahbod
dbe9ba6711
[serialize] Add object_t, link_t, and snapshot_t
2019-03-30 17:10:59 -07:00
Behdad Esfahbod
38d57b9a66
[map] Add another TODO item
2019-03-30 16:38:06 -07:00
Behdad Esfahbod
7fd940f899
[map] Add TODO
2019-03-30 16:29:19 -07:00
Behdad Esfahbod
6dcf7c4017
[serialize] Add unused 'tail'
2019-03-30 15:08:39 -07:00
Behdad Esfahbod
fe05e48086
[serialize] Add ran_out_of_room
2019-03-30 15:06:25 -07:00
Behdad Esfahbod
a7c63cd8f8
Split sanitize and dispatch into their own files
2019-03-30 14:59:40 -07:00
Behdad Esfahbod
be66b575fc
Move serializer to hb-serialize.hh
2019-03-30 14:53:54 -07:00
Behdad Esfahbod
bb22462f29
Whitespace
2019-03-30 14:46:54 -07:00
Behdad Esfahbod
ef33b5d1f6
[map] Deref pointers before equality check
2019-03-30 14:39:21 -07:00
Behdad Esfahbod
c98f51da71
[map] Templatize hb_map_t
...
Template name is hb_hashmap_t<K,V>.
2019-03-30 14:32:52 -07:00
Michiharu Ariza
294d520f65
more iter changes from master
2019-03-30 13:58:22 -07:00
Behdad Esfahbod
4b7f4dbc0c
Add hb_deref_pointer()
2019-03-30 13:48:32 -07:00
Michiharu Ariza
8f2ce82f76
hb.hh from master
2019-03-30 11:50:24 -07:00
Michiharu Ariza
3bfd3a367c
fix build
2019-03-30 00:27:02 -07:00
Michiharu Ariza
c7ca8853ae
more change set() to =
2019-03-30 00:11:58 -07:00
Michiharu Ariza
d75b73a309
fix rebase errors
2019-03-30 00:06:54 -07:00
Michiharu Ariza
3fbd242ba6
replace .set() with =
...
remove .gitignore
2019-03-29 23:53:06 -07:00
Michiharu Ariza
cc94a9ed3b
Merge branch 'var-subset' of https://github.com/harfbuzz/harfbuzz into var-subset
...
rebase master
2019-03-29 23:37:50 -07:00
Behdad Esfahbod
e530692799
[iter] Fix bug in hb_any() and hb_none()
2019-03-29 23:31:39 -07:00
Michiharu Ariza
ce6093a96b
Merge branch 'var-subset' of https://github.com/harfbuzz/harfbuzz into var-subset
2019-03-29 23:24:12 -07:00
Michiharu Ariza
a1177fec8f
Merge branch 'master' into var-subset
...
rebase master
2019-03-29 23:23:49 -07:00
Behdad Esfahbod
f505b5d5c9
[iter] Port remaining "for (auto" instances to daggers
2019-03-29 22:55:02 -07:00
Behdad Esfahbod
668d2d562f
[iter] One more dagger
2019-03-29 22:48:38 -07:00
Behdad Esfahbod
d51452500f
[iter] Remove more wrong &&'s
...
Sigh...
2019-03-29 22:48:12 -07:00
Behdad Esfahbod
05f2130a1c
[iter] More daggers
2019-03-29 22:43:12 -07:00
Behdad Esfahbod
22ec4c3aa5
[iter] More daggers
2019-03-29 22:29:00 -07:00
Behdad Esfahbod
688069bbfb
[iter] One more dagger
2019-03-29 22:17:31 -07:00
Behdad Esfahbod
90b60bd690
Remove HB_DEBUG_WOULD_APPLY
...
Not that useful.
2019-03-29 22:12:42 -07:00
Behdad Esfahbod
4d28267e59
[iter] Port more to daggers
2019-03-29 22:04:15 -07:00
Behdad Esfahbod
9d8c72042b
Whitespace
2019-03-29 21:59:28 -07:00
Behdad Esfahbod
418e9d07e2
Simplify code
2019-03-29 21:57:26 -07:00
Behdad Esfahbod
f5ef8a7347
[iter] Port one more function to dagger
2019-03-29 21:57:17 -07:00
Behdad Esfahbod
bcab098c8f
[iter] Port more code to daggers
2019-03-29 21:49:18 -07:00
Behdad Esfahbod
4c75158e18
[iter] Port two more functions to daggers
2019-03-29 21:46:13 -07:00
Behdad Esfahbod
e70ccbe9ed
Fix pair signature
...
Oh well. Again, who does fully understand what is right???
2019-03-29 21:45:49 -07:00
Behdad Esfahbod
6237b47f0c
[iter] Add hb_unzip()
2019-03-29 21:36:49 -07:00
Behdad Esfahbod
f1dad91eb3
Whitespace
2019-03-29 21:17:08 -07:00
Behdad Esfahbod
896b31670d
[iter] Port two more loops to dagger
2019-03-29 21:16:30 -07:00
Behdad Esfahbod
8e34cb251a
[iter] Remove unneeded &&
...
Next commit needs this. I never fully get this, sigh.
2019-03-29 21:14:20 -07:00
Behdad Esfahbod
12a4c0441f
Whitespace
2019-03-29 21:06:10 -07:00
Behdad Esfahbod
4c38a9f601
Remove hb_assign()
...
Not needed anymore. We just use operator= now.
2019-03-29 20:23:07 -07:00
Behdad Esfahbod
b986c6a321
[C++11] Remove IntType::set() in favor of operator=
2019-03-29 20:21:21 -07:00
Behdad Esfahbod
58ad357951
[vector] Accept all types in push(...)
...
Let assignment operator worry about conversion.
2019-03-29 20:05:19 -07:00
Behdad Esfahbod
489faf826c
[C++11] Use type aliases for template partial instantiations
2019-03-29 20:01:37 -07:00
Michiharu Ariza
435bc7f3e2
Update hb-ot-var-gvar-table.hh
2019-03-29 18:39:30 -07:00
Michiharu Ariza
8fdb8fcf80
fix rebase errors
2019-03-29 18:39:27 -07:00
Michiharu Ariza
1ccb457cbb
fix gvar fuzz bug
2019-03-29 18:28:25 -07:00
Behdad Esfahbod
3f84589232
2.4.0
2019-03-29 18:27:21 -07:00
Behdad Esfahbod
282c76d9a0
Use internal bsearch() for language tags
...
Fixes https://github.com/harfbuzz/harfbuzz/pull/1639
2019-03-29 18:27:21 -07:00
Behdad Esfahbod
3bed03dc6a
[indic] Add back medial-consonant to grammar
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1592
2019-03-29 18:27:21 -07:00
Behdad Esfahbod
f8803fbace
[khmer] Add trailing Coeng to syllable grammar
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1541
2019-03-29 18:27:21 -07:00
Michiharu Ariza
f84342c094
minor
2019-03-29 18:27:21 -07:00
Michiharu Ariza
3e18447c64
fixed a fuzzer bug
2019-03-29 18:27:21 -07:00
Behdad Esfahbod
4774283a2c
Fix shell syntax error
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1612
2019-03-29 18:27:21 -07:00
Behdad Esfahbod
4b763affa6
Comment
2019-03-29 18:27:21 -07:00
punchcutter
d9d6649bf2
Override USE category for Grantha and Tirhuta visargas to allow marks
2019-03-29 18:27:21 -07:00
Egor Pugin
13ae138af3
Disable unwanted C++ definitions for MSVC.
...
MSVC does not set __cplusplus to the latest standard and also it does not like redefining some keywords.
2019-03-29 18:27:21 -07:00
Michiharu Ariza
53d40426e1
tweaked recursion checks
2019-03-29 18:27:21 -07:00
Michiharu Ariza
4f351754bb
add recursion checks
2019-03-29 18:27:21 -07:00
Michiharu Ariza
0008963b28
add support of anchor point & SCALED/UNSCALED_COMPONENT_OFFSET
...
some code cleanup
2019-03-29 18:27:21 -07:00
Behdad Esfahbod
ea281aa8d0
Use class templates for Null objects
...
This allows partial-instantiating custom Null object for template Lookup<T>.
Before, this had to be handcoded per instantiation. Apparently I missed
adding one for AAT::ankr.lookupTable, so it was getting the wrong (generic)
null for Lookup object, which is wrong and unsafe.
Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=944346
2019-03-29 18:27:21 -07:00
Behdad Esfahbod
1dfc2dfff5
[aat] Add missing check to ankr table
...
Isn't absolutely needed. But helps.
2019-03-29 18:27:21 -07:00
Qunxin Liu
2f97cd7a52
completely remove lines that are commented out
2019-03-29 18:27:21 -07:00
Qunxin Liu
e74d646d9e
update arguments in_populate_gids_to_retain() and _create_old_gid_to_new_gid_map()
...
so they don't use deprecated variable
2019-03-29 18:27:21 -07:00
Qunxin Liu
b12a5daad7
try to remove deprecated variable from struct definition
2019-03-29 18:27:21 -07:00
Michiharu Ariza
ae3db1f4e3
added api test for subset VVAR & bug fix
...
added a mod copy of SourceSerifVariable-Roman.ttf with VVAR as a test font
2019-03-29 18:27:08 -07:00
Michiharu Ariza
fe5aa8b36c
added TT VF full font test & fixed bugs
...
updated CFF2 VF api test results too
2019-03-29 18:26:46 -07:00
Michiharu Ariza
212dcb758c
add api test cases for HVAR with index map (and fix)
2019-03-29 18:26:20 -07:00
Michiharu Ariza
6ee71166b0
add api tests for subset gvar & HVAR; bug fixes
2019-03-29 18:26:20 -07:00
Michiharu Ariza
84d0af456b
move rounding advance width to glyf
2019-03-29 18:26:20 -07:00
Michiharu Ariza
10f264da75
fix empty glyf's advance width
2019-03-29 18:26:20 -07:00
Michiharu Ariza
511518c759
add api test for tt var advance widths
...
stripped HVAR from SourceSansVariable-Roman.abc.ttf so glyf gets parsed
2019-03-29 18:26:20 -07:00
Michiharu Ariza
bee8d86671
fix build
2019-03-29 18:26:20 -07:00
Michiharu Ariza
f74712a4e0
fix composite glyf extents
2019-03-29 18:26:20 -07:00
Michiharu Ariza
cd817e7955
fix unpack_points
2019-03-29 18:26:20 -07:00
Michiharu Ariza
a35e3dfc77
fix infer_delta
...
code cleanup
2019-03-29 18:26:20 -07:00
Michiharu Ariza
4f4fbb1d5e
added explicit casts to metrics
2019-03-29 18:25:52 -07:00
Michiharu Ariza
c302ec6d94
moved most of var code from gvar to glyf
...
initialize phantom points from metrics from htmx/vmtx & glyf bbox before execution
added source file hb-ot-hmtx-table.cc to call glyf from hmtx/vmtx indirectly & temporarily, workaround a cyclic reference between the two
2019-03-29 18:25:52 -07:00
Michiharu Ariza
bd040a4354
add components transformation
2019-03-29 18:25:35 -07:00
Michiharu Ariza
139e87b56c
fix tt var extents & add test
2019-03-29 18:25:35 -07:00
Michiharu Ariza
9584b090bb
cff2 subset fuzzer issues ( #1619 )
...
* add check to FDArray::serialize
* add test files
* fix off by one
2019-03-29 18:25:21 -07:00
Michiharu Ariza
161e61fc3b
minor edits
2019-03-29 18:25:06 -07:00
Michiharu Ariza
ebbfe36510
calculate VF advance widths from gvar & glyf
2019-03-29 18:24:24 -07:00
Michiharu Ariza
9690461a91
Added hb-ot-var-gvar-table.hh
...
implemented sanitize()
placeholder subset()
some code cleanup
2019-03-29 18:22:32 -07:00
Michiharu Ariza
9168b32a1b
renamed hb_map2_t to hb_bimap_h in its own .hh
2019-03-29 18:21:50 -07:00
Michiharu Ariza
d102c7a652
unuse set in hb_map2_t impl
...
also some code cleanup
2019-03-29 18:21:15 -07:00
Michiharu Ariza
dd67214210
subset HVAR
...
Re-implemented & repurposed CFF:remap_t as hb_map2_t (moved to hb-ot-layout-common.hh) for two-way mapping for use by index map subsetting.
Hooked up HVAR subsetter through _subset2.
Some renaming in CFF code.
2019-03-29 18:20:22 -07:00
Ebrahim Byagowi
5bbe78a0f3
Allow zero length ranges in sanitization ( #1617 )
...
Fixes fvar table sanitization where there are no named instance
by allowing zero length ranges starting from Null() address.
Fixes #1607
2019-03-29 18:15:00 -07:00
David Corbett
5d7725ad1a
Categorize U+09FC as Consonant_Placeholder
2019-03-29 18:15:00 -07:00
Michiharu Ariza
628d457c87
add gvar::get_extents
2019-03-29 18:15:00 -07:00
Behdad Esfahbod
7b27fe5255
Remove redundant hb_ot_layout_lookup_would_substitute_fast
2019-03-29 18:15:00 -07:00
Khaled Hosny
56164f754f
[doc] Add placeholder since version for new flag
2019-03-29 18:15:00 -07:00
David Corbett
cb758f2669
Remove obsolete overrides from Indic/USE scripts
2019-03-29 18:15:00 -07:00
Eric Muller
40c4bd3e12
Update generation code for hb-ot-shape-complex-vowel-constraints.cc. Remove 'unlikely'
2019-03-29 18:15:00 -07:00
Eric Muller
ce7f2c4da3
Fix coding style.
2019-03-29 18:15:00 -07:00
Eric Muller
a86356913e
Add a flag to hb_buffer_t to prevent the insertion of dotted circles on incorrect character sequences.
...
Current behavior unchanged if this flag is not set (and it isn't by default).
2019-03-29 18:15:00 -07:00
David Corbett
4a19d3b080
Update to Unicode 12.0.0
2019-03-29 18:15:00 -07:00
Adrian Wong
4f03d5c79d
[indic] Remove superfluous ZWNJ check in final reorder of pre-base matras
2019-03-29 18:15:00 -07:00
Stephan Bergmann
7b7852efa5
Fix hb_atomic_* variants based on C++11 atomics
...
I stumbled over this when trying to upgrade the version of HarfBuzz used by
LibreOffice to 3.2.1 (see <https://gerrit.libreoffice.org/plugins/gitiles/core/
+/b7ddc514bff9bdf682abae537f990aa01dc2c0fb%5E!/> "Upgrade to latest
HarfBuzz 2.3.1"), where building with MSVC 2017 failed like
> c:\cygwin\home\tdf\lode\jenkins\workspace\gerrit_windows\workdir\unpackedtarball\harfbuzz\src\hb-atomic.hh(272): error C2440: 'reinterpret_cast': cannot convert from 'const int *' to 'std::atomic<int> *'
> c:\cygwin\home\tdf\lode\jenkins\workspace\gerrit_windows\workdir\unpackedtarball\harfbuzz\src\hb-atomic.hh(272): note: Conversion loses qualifiers
> c:\cygwin\home\tdf\lode\jenkins\workspace\gerrit_windows\workdir\unpackedtarball\harfbuzz\src\hb-atomic.hh(272): error C2227: left of '->load' must point to class/struct/union/generic type
(see <https://ci.libreoffice.org/job/gerrit_windows/29916/ >).
I added all the necessary "const" to make building of HarfBuzz 2.3.1 with
MSVC 2017 succeed for me. There may be more missing at least conceptually.
2019-03-29 18:14:59 -07:00
Martin Hosken
7296242046
Fix offset drift in graphite integration
2019-03-29 18:14:59 -07:00
Michiharu Ariza
5fc99b3d34
fix build
2019-03-29 18:14:59 -07:00
Michiharu Ariza
696b841a5a
minor edits
2019-03-29 18:14:59 -07:00
Michiharu Ariza
14be8b9e87
build fix attempt
2019-03-29 18:14:59 -07:00
Michiharu Ariza
618de1c7f9
more build fixes
2019-03-29 18:14:59 -07:00
Michiharu Ariza
f2c556594a
fix build attempt
2019-03-29 18:14:59 -07:00
Michiharu Ariza
40dfca7213
calculate VF advance widths from gvar & glyf
2019-03-29 18:14:59 -07:00
Garret Rieger
d0b6d539f6
Make hb_subset_input_glyph_set () actually do something.
2019-03-29 18:14:59 -07:00
Michiharu Ariza
a842fdfbf0
gvar::subset()
2019-03-29 18:14:59 -07:00
Ebrahim Byagowi
c2e9d75035
[dwrite] hb_directwrite_face_create, a new API
...
It makes a hb_face_t from IDWriteFontFace, useful when using
DirectWrite facilities for font selection, loading and rendering
but using harfbuzz for shaping.
2019-03-29 18:14:59 -07:00
Michiharu Ariza
2c5ed7f152
Added hb-ot-var-gvar-table.hh
...
implemented sanitize()
placeholder subset()
some code cleanup
2019-03-29 18:14:59 -07:00
David Corbett
087b9a0ad0
Fix or document unsupported font-feature-settings
2019-03-29 18:14:59 -07:00
Michiharu Ariza
f1e97c189e
renamed hb_map2_t to hb_bimap_h in its own .hh
2019-03-29 18:14:59 -07:00
Michiharu Ariza
655bc96bc2
subset VVAR & outer indices
2019-03-29 18:14:59 -07:00
Michiharu Ariza
6ecfaaa6d5
unuse set in hb_map2_t impl
...
also some code cleanup
2019-03-29 18:14:59 -07:00
Michiharu Ariza
a762cf5033
fixed compiler gripes
2019-03-29 18:14:59 -07:00
Michiharu Ariza
a00d1d5e74
fix CFF2 local subr subsetting
...
bug exposed by impl change of fdmap
also fixed name of subr_remap_ts as subr_remaps_t
2019-03-29 18:14:59 -07:00
Michiharu Ariza
8bd9d28e2a
fix HVAR & VarStore subsetting
2019-03-29 18:14:59 -07:00
Behdad Esfahbod
4fd02f6ee5
Remove unused line
2019-03-29 17:58:23 -07:00
Behdad Esfahbod
9a5b15dc1e
[C++11] Replace BEInt.set() with operator=
2019-03-29 17:58:19 -07:00
Behdad Esfahbod
0aa59b1de3
[C++11] Add operator= to IntType<>
...
Now that we require C++11 we can do this.
2019-03-29 17:58:15 -07:00
Behdad Esfahbod
eca466e6b1
Err. Fixup C++11 polyfill removal
...
Fixes 1d75db19fb
2019-03-29 15:59:04 -07:00
Behdad Esfahbod
3f36c89f2e
Inline explicit_operator macro
...
Now that we require C++11, no need to macro.
2019-03-29 15:22:46 -07:00
Behdad Esfahbod
1d75db19fb
Remove C++<11 polyfill
...
Leaving hb-atomic.hh as is since harmless and other projects might
copy from that file.
2019-03-29 15:20:34 -07:00
Behdad Esfahbod
8e7887ca5f
Merge branch 'master' into iter
2019-03-29 14:37:04 -07:00
Ebrahim Byagowi
b292772e6e
[dwrite] A new API, hb_directwrite_face_get_font_face ( #1600 )
...
Can be useful when using HarfBuzz for font loading and shaping
but using DirectWrite for rendering.
2019-03-29 13:00:56 -07:00
Behdad Esfahbod
59f36f3682
Replace REPLACEME's left out of 2.4.0
...
https://github.com/harfbuzz/harfbuzz/issues/1641
2019-03-29 10:55:12 -07:00
Behdad Esfahbod
443db2a246
[iter] Remove hb_len()
...
Not planning on using it. So remove. Can add later if needed.
2019-03-29 10:47:13 -07:00
Michiharu Ariza
ddb84dcece
fix gvar fuzz bug
2019-03-29 10:32:42 -07:00
Behdad Esfahbod
bdd5a9c48d
Add hb_hash()
...
I don't like the hb_remove_reference() hack, but necessary.
2019-03-28 21:58:07 -07:00
Behdad Esfahbod
343e6063dc
Add hb_is_integer(T)
2019-03-28 21:44:12 -07:00
Behdad Esfahbod
f639b9a8ea
[iter] Add hb_len() function-object
2019-03-28 21:34:47 -07:00
Behdad Esfahbod
a030ce4ff8
Merge branch 'master' into iter
2019-03-28 21:26:50 -07:00
Behdad Esfahbod
d6fc1d49aa
2.4.0
2019-03-28 21:21:26 -07:00
Behdad Esfahbod
d2db71fdc4
Use internal bsearch() for language tags
...
Fixes https://github.com/harfbuzz/harfbuzz/pull/1639
2019-03-28 21:04:34 -07:00
Behdad Esfahbod
21bb80ebf2
[indic] Add back medial-consonant to grammar
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1592
2019-03-28 20:50:04 -07:00
Behdad Esfahbod
5ab6de7a6f
[khmer] Add trailing Coeng to syllable grammar
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1541
2019-03-28 20:23:12 -07:00
Michiharu Ariza
58c8c7a495
Merge branch 'master' into var-subset
2019-03-28 16:17:41 -07:00
Michiharu Ariza
485fe06f74
minor
2019-03-28 16:17:36 -07:00
Michiharu Ariza
5f36771c2a
Merge branch 'var-subset' of https://github.com/harfbuzz/harfbuzz into var-subset
2019-03-28 15:07:53 -07:00
Michiharu Ariza
99f0c107f7
fixed a fuzzer bug
2019-03-28 15:07:49 -07:00
Behdad Esfahbod
160b4a2b01
Fix shell syntax error
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1612
2019-03-28 13:44:59 -07:00
Behdad Esfahbod
8665b9b0a2
Comment
2019-03-28 13:44:59 -07:00
punchcutter
a7eed7e41d
Override USE category for Grantha and Tirhuta visargas to allow marks
2019-03-28 13:31:45 -07:00
Egor Pugin
cf040c0fef
Disable unwanted C++ definitions for MSVC.
...
MSVC does not set __cplusplus to the latest standard and also it does not like redefining some keywords.
2019-03-28 11:10:42 -07:00
Michiharu Ariza
061bd0a99b
Merge branch 'var-subset' of https://github.com/harfbuzz/harfbuzz into var-subset
2019-03-27 08:53:50 -07:00
Michiharu Ariza
67175987bd
tweaked recursion checks
2019-03-27 08:52:46 -07:00
Michiharu Ariza
feb712d8d8
add recursion checks
2019-03-26 20:35:01 -07:00
Michiharu Ariza
bcd689bb10
Merge branch 'master' into var-subset
2019-03-26 17:13:31 -07:00
Michiharu Ariza
49f9359632
add support of anchor point & SCALED/UNSCALED_COMPONENT_OFFSET
...
some code cleanup
2019-03-26 17:10:46 -07:00
Behdad Esfahbod
ec2a5dc859
Use class templates for Null objects
...
This allows partial-instantiating custom Null object for template Lookup<T>.
Before, this had to be handcoded per instantiation. Apparently I missed
adding one for AAT::ankr.lookupTable, so it was getting the wrong (generic)
null for Lookup object, which is wrong and unsafe.
Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=944346
2019-03-26 16:23:40 -07:00
Behdad Esfahbod
96f1237794
[aat] Add missing check to ankr table
...
Isn't absolutely needed. But helps.
2019-03-26 16:17:45 -07:00
Qunxin Liu
2d9034491e
completely remove lines that are commented out
2019-03-26 13:39:33 -07:00
Qunxin Liu
3147133b61
update arguments in_populate_gids_to_retain() and _create_old_gid_to_new_gid_map()
...
so they don't use deprecated variable
2019-03-26 13:39:33 -07:00
Qunxin Liu
79a6c25849
try to remove deprecated variable from struct definition
2019-03-26 13:39:33 -07:00
Michiharu Ariza
3c4f041e9e
fix uninitialized memory bug
2019-03-22 10:26:48 -07:00
Michiharu Ariza
d2a0149c29
added api test for subset VVAR & bug fix
...
added a mod copy of SourceSerifVariable-Roman.ttf with VVAR as a test font
2019-03-21 18:09:37 -07:00
Michiharu Ariza
8ec279072e
Merge branch 'var-subset' of https://github.com/harfbuzz/harfbuzz into var-subset
2019-03-21 10:38:12 -07:00
Michiharu Ariza
0593a95e28
refix short count
2019-03-21 10:36:53 -07:00
Michiharu Ariza
5390e39342
Merge branch 'var-subset' of https://github.com/harfbuzz/harfbuzz into var-subset
2019-03-21 10:21:50 -07:00
Michiharu Ariza
084be9a0f4
Merge branch 'master' into var-subset
2019-03-21 10:21:31 -07:00
Michiharu Ariza
5f15fca662
fix short count optimization
2019-03-21 10:18:03 -07:00
Michiharu Ariza
325918172e
added TT VF full font test & fixed bugs
...
updated CFF2 VF api test results too
2019-03-20 15:10:59 -07:00
Michiharu Ariza
1051faf7aa
add api test cases for HVAR with index map (and fix)
2019-03-19 16:00:01 -07:00
Michiharu Ariza
2e6038a209
add api tests for subset gvar & HVAR; bug fixes
2019-03-19 00:41:41 -07:00
Michiharu Ariza
560bcd7744
move rounding advance width to glyf
2019-03-18 17:50:20 -07:00
Michiharu Ariza
c7edd14dc9
fix empty glyf's advance width
2019-03-18 17:16:43 -07:00
Michiharu Ariza
9d3a252030
add api test for tt var advance widths
...
stripped HVAR from SourceSansVariable-Roman.abc.ttf so glyf gets parsed
2019-03-18 15:39:10 -07:00
Michiharu Ariza
9d9d5c706b
fix build
2019-03-18 10:48:53 -07:00
Michiharu Ariza
b6cc838888
fix composite glyf extents
2019-03-17 22:49:18 -07:00
Michiharu Ariza
597ad4df0c
fix unpack_points
2019-03-17 18:45:30 -07:00
Michiharu Ariza
cabe22fc69
fix infer_delta
...
code cleanup
2019-03-17 17:48:10 -07:00
Michiharu Ariza
c8b31773a6
added explicit casts to metrics
2019-03-17 16:01:49 -07:00
Michiharu Ariza
8a7998fd6c
moved most of var code from gvar to glyf
...
initialize phantom points from metrics from htmx/vmtx & glyf bbox before execution
added source file hb-ot-hmtx-table.cc to call glyf from hmtx/vmtx indirectly & temporarily, workaround a cyclic reference between the two
2019-03-17 15:36:26 -07:00
Michiharu Ariza
00b2653ac3
add components transformation
2019-03-16 16:27:33 -07:00
Michiharu Ariza
434ea06841
fix tt var extents & add test
2019-03-16 00:08:03 -07:00
Michiharu Ariza
bcb4e505d6
cff2 subset fuzzer issues ( #1619 )
...
* add check to FDArray::serialize
* add test files
* fix off by one
2019-03-15 13:46:25 -07:00
Michiharu Ariza
d23c201f5d
add gvar::get_extents
2019-03-14 16:58:02 -07:00
Michiharu Ariza
dde8bb1f6d
fix build
2019-03-14 16:58:02 -07:00
Michiharu Ariza
5ec65f779b
minor edits
2019-03-14 16:58:02 -07:00
Michiharu Ariza
2d7ad3f28b
build fix attempt
2019-03-14 16:58:02 -07:00
Michiharu Ariza
cf2ef92c74
more build fixes
2019-03-14 16:58:02 -07:00
Michiharu Ariza
ae0a557c2e
fix build attempt
2019-03-14 16:58:02 -07:00
Michiharu Ariza
baf2ccf147
calculate VF advance widths from gvar & glyf
2019-03-14 16:58:02 -07:00
Michiharu Ariza
0b1ae2385b
gvar::subset()
2019-03-14 16:58:02 -07:00
Michiharu Ariza
eddbc9d0db
Added hb-ot-var-gvar-table.hh
...
implemented sanitize()
placeholder subset()
some code cleanup
2019-03-14 16:58:02 -07:00
Michiharu Ariza
f289ffe5ea
renamed hb_map2_t to hb_bimap_h in its own .hh
2019-03-14 16:58:02 -07:00
Michiharu Ariza
8563169291
subset VVAR & outer indices
2019-03-14 16:58:02 -07:00
Michiharu Ariza
08dc86594b
unuse set in hb_map2_t impl
...
also some code cleanup
2019-03-14 16:58:02 -07:00
Michiharu Ariza
1b13cc775c
fixed compiler gripes
2019-03-14 16:58:02 -07:00
Michiharu Ariza
c485b77c7c
fix CFF2 local subr subsetting
...
bug exposed by impl change of fdmap
also fixed name of subr_remap_ts as subr_remaps_t
2019-03-14 16:58:02 -07:00
Michiharu Ariza
c9b07c75a1
fix HVAR & VarStore subsetting
2019-03-14 16:58:02 -07:00
Michiharu Ariza
c8420109cc
subset HVAR
...
Re-implemented & repurposed CFF:remap_t as hb_map2_t (moved to hb-ot-layout-common.hh) for two-way mapping for use by index map subsetting.
Hooked up HVAR subsetter through _subset2.
Some renaming in CFF code.
2019-03-14 16:58:02 -07:00
Ebrahim Byagowi
8aaab78efc
Allow zero length ranges in sanitization ( #1617 )
...
Fixes fvar table sanitization where there are no named instance
by allowing zero length ranges starting from Null() address.
Fixes #1607
2019-03-14 16:49:42 -07:00
David Corbett
7de9f92ee9
Categorize U+09FC as Consonant_Placeholder
2019-03-13 12:59:56 -07:00
Behdad Esfahbod
e52ec3fc23
Remove redundant hb_ot_layout_lookup_would_substitute_fast
2019-03-11 18:09:51 -07:00
Khaled Hosny
c2442c90d6
[doc] Add placeholder since version for new flag
2019-03-12 01:10:52 +02:00
David Corbett
8c42f03215
Remove obsolete overrides from Indic/USE scripts
2019-03-11 16:07:52 -07:00
Eric Muller
b38bab8622
Update generation code for hb-ot-shape-complex-vowel-constraints.cc. Remove 'unlikely'
2019-03-11 16:06:41 -07:00
Eric Muller
44a67ddeb8
Fix coding style.
2019-03-11 16:06:41 -07:00
Eric Muller
30d7c40f8c
Add a flag to hb_buffer_t to prevent the insertion of dotted circles on incorrect character sequences.
...
Current behavior unchanged if this flag is not set (and it isn't by default).
2019-03-11 16:06:41 -07:00
David Corbett
e723c04de1
Update to Unicode 12.0.0
2019-03-07 10:15:31 -08:00
Adrian Wong
2f125b0fa7
[indic] Remove superfluous ZWNJ check in final reorder of pre-base matras
2019-03-05 16:41:49 -08:00
Stephan Bergmann
d936ad4582
Fix hb_atomic_* variants based on C++11 atomics
...
I stumbled over this when trying to upgrade the version of HarfBuzz used by
LibreOffice to 3.2.1 (see <https://gerrit.libreoffice.org/plugins/gitiles/core/
+/b7ddc514bff9bdf682abae537f990aa01dc2c0fb%5E!/> "Upgrade to latest
HarfBuzz 2.3.1"), where building with MSVC 2017 failed like
> c:\cygwin\home\tdf\lode\jenkins\workspace\gerrit_windows\workdir\unpackedtarball\harfbuzz\src\hb-atomic.hh(272): error C2440: 'reinterpret_cast': cannot convert from 'const int *' to 'std::atomic<int> *'
> c:\cygwin\home\tdf\lode\jenkins\workspace\gerrit_windows\workdir\unpackedtarball\harfbuzz\src\hb-atomic.hh(272): note: Conversion loses qualifiers
> c:\cygwin\home\tdf\lode\jenkins\workspace\gerrit_windows\workdir\unpackedtarball\harfbuzz\src\hb-atomic.hh(272): error C2227: left of '->load' must point to class/struct/union/generic type
(see <https://ci.libreoffice.org/job/gerrit_windows/29916/ >).
I added all the necessary "const" to make building of HarfBuzz 2.3.1 with
MSVC 2017 succeed for me. There may be more missing at least conceptually.
2019-03-05 12:11:32 -08:00
Martin Hosken
731b13e4e9
Fix offset drift in graphite integration
2019-03-03 22:10:46 -08:00
Garret Rieger
4f37ab63de
Make hb_subset_input_glyph_set () actually do something.
2019-03-01 10:49:46 -08:00
Ebrahim Byagowi
45149eb34f
[dwrite] hb_directwrite_face_create, a new API
...
It makes a hb_face_t from IDWriteFontFace, useful when using
DirectWrite facilities for font selection, loading and rendering
but using harfbuzz for shaping.
2019-02-26 15:42:38 -08:00
David Corbett
45adc18526
Fix or document unsupported font-feature-settings
2019-02-25 17:48:16 -05:00
Michiharu Ariza
09df17e71b
subset HVAR
...
Re-implemented & repurposed CFF:remap_t as hb_map2_t (moved to hb-ot-layout-common.hh) for two-way mapping for use by index map subsetting.
Hooked up HVAR subsetter through _subset2.
Some renaming in CFF code.
2019-02-20 15:48:29 -08:00
Michiharu Ariza
93739242e1
minor edit
2019-02-20 13:23:12 -08:00
Michiharu Ariza
eebc21c8de
fix crash in hb_map_t::clear()
...
in case called immediately after init()
2019-02-20 12:43:18 -08:00
Evgeniy Reizner
d29c8424c8
Typo ( #1588 )
...
Fixed a small typo.
[skip ci]
2019-02-19 20:05:00 +03:30
Khaled Hosny
6bd4c082e4
[doc] Document hb_feature_from_string() syntax
...
Copied and edited from the util option documentation. The docbook table
syntax is too verbose, but that is the best I can come up with.
2019-02-18 17:00:44 -08:00
Behdad Esfahbod
11456b2d9c
WHitespace
2019-02-15 16:58:43 -08:00
Behdad Esfahbod
77060bcda2
[iter] Add hb_all, hb_any, hb_none
2019-02-15 16:55:08 -08:00
Behdad Esfahbod
72dd5e34e0
[iter] Make hb_iter() into function-object
2019-02-15 16:15:50 -08:00
Behdad Esfahbod
98be7bd77a
[iter] Make hb_map into function-object
2019-02-15 16:09:29 -08:00
Behdad Esfahbod
c1e5ba81fe
Merge remote-tracking branch 'origin/master' into iter
2019-02-15 16:06:03 -08:00
Behdad Esfahbod
b8b3b3e38b
[iter] Add hb_enumerate() and use it
2019-02-15 16:05:36 -08:00
Behdad Esfahbod
3da79dd5b9
Merge pull request #1557 from harfbuzz/cff-more-arrayof-fixes
...
CFF more arrayof fixes
2019-02-15 15:54:51 -08:00
Michiharu Ariza
d8a68728a0
Merge branch 'master' into cff-more-arrayof-fixes
2019-02-15 14:48:10 -08:00
Michiharu Ariza
90c8bbf987
Merge branch 'master' into cff-retain-gids
2019-02-15 14:47:38 -08:00
Martin
5c2bb1de8d
Support xlclang++ on AIX. ( #1584 )
2019-02-15 21:53:46 +03:30
Behdad Esfahbod
1558a43342
[test] Minor
2019-02-14 20:46:13 -08:00
Behdad Esfahbod
fa373584de
[algs] Test pair more
2019-02-14 20:15:07 -08:00
Behdad Esfahbod
0d7af5fb02
[algs] Use universal references for hb_pair()
...
Such that it carries lvalues inside.
2019-02-14 19:37:57 -08:00
Behdad Esfahbod
5b99c92d4c
[iter] Use more
2019-02-14 17:10:04 -08:00
Behdad Esfahbod
72c1b59588
[iter] Use in more places
2019-02-14 15:43:20 -08:00
Behdad Esfahbod
40cce41eae
[iter] Use in a couple more intersects() calls
2019-02-14 15:14:37 -08:00
Behdad Esfahbod
bafdf1829d
[iter] Use in a couple more closure() calls
2019-02-14 15:13:16 -08:00
Behdad Esfahbod
fa35d3fd81
[iter] Add hb_drain
2019-02-14 14:04:05 -08:00
Behdad Esfahbod
f4cfd6b6ad
[iter] A couple more hb_apply() + lambda uses
2019-02-14 13:45:52 -08:00
Behdad Esfahbod
7514a49f21
[iter] Use hb_apply() with lambda functions in a few places
2019-02-14 13:16:33 -08:00
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