Behdad Esfahbod
3a74ee5282
2.6.4
2019-10-29 12:49:28 -07:00
Ebrahim Byagowi
3958f6fb23
Add in_range in hb_bytes_t to merge range_checker_t with it
2019-10-29 23:16:05 +03:30
Ebrahim Byagowi
aa3831e295
[glyf] Use contour_bounds_t::empty to simplify get_extents logic
2019-10-29 22:34:14 +03:30
Ebrahim Byagowi
d59ae5836d
[glyf] Refactor contour_bounds_t use to make its fields protected
2019-10-29 22:34:14 +03:30
Behdad Esfahbod
773ee8041e
Merge pull request #2038 from ebraminio/glyf-contour
...
Remove contour_point_t so we won't need to zero its unused var
2019-10-29 10:58:56 -07:00
Ebrahim Byagowi
0efbda7a40
Remove contour_point_t so we won't need to zero its unused var
2019-10-29 21:03:26 +03:30
Behdad Esfahbod
47b4074d5f
Merge pull request #2034 from khaledhosny/cmap-notdef
...
[cmap] Check GID before adding ranges in format 4 & 12
2019-10-29 03:16:34 -07:00
jfkthame
dd8a846037
Use proper y-scale factor for height value
2019-10-29 09:20:41 +00:00
Behdad Esfahbod
7152ac3fcf
Fix build
...
$ make CPPFLAGS="-DHB_TINY -DHB_NO_OT_FONT" libharfbuzz-subset.la
2019-10-28 17:12:55 -07:00
Khaled Hosny
dd288840d6
[cmap] Check GID before adding ranges in format 4 & 12
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/2031
2019-10-29 02:09:13 +02:00
Behdad Esfahbod
fd71c045b4
Hopefully fix up previous commit and bots
2019-10-28 17:06:53 -07:00
Behdad Esfahbod
e832dc4c64
[config] Make HB_NO_ERRNO work with systems defining errno as a macro
2019-10-28 17:02:40 -07:00
Behdad Esfahbod
ce11df1b5b
2.6.3
2019-10-28 14:46:59 -07:00
Behdad Esfahbod
5a59de2b98
Actually add +hb_font_get_nominal_glyphs()
...
New API:
+hb_font_get_nominal_glyphs()
2019-10-28 14:46:59 -07:00
Behdad Esfahbod
03028a5fe5
Revert "Don't include codepoint 0 in the results of collect_unicodes."
...
This reverts commit 14ad96ffbf
.
This was wrong. My bad!
https://github.com/harfbuzz/harfbuzz/issues/2031
2019-10-28 13:46:56 -07:00
Garret Rieger
14ad96ffbf
Don't include codepoint 0 in the results of collect_unicodes.
...
It is always assumed to be the notdef glyph.
2019-10-28 12:56:04 -07:00
Ebrahim Byagowi
aca6390281
[gpos] Don't move pointer when match_glyph_data is not set
2019-10-28 22:17:48 +03:30
Qunxin Liu
defe9b6da0
crash fix : Heap-buffer-overflow READ 2
...
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=18513
2019-10-25 13:09:47 -07:00
Qunxin Liu
b2fcca6e14
fuzzer crash fix
...
https://oss-fuzz.com/testcase-detail/5643107869917184
2019-10-24 16:11:30 -07:00
Behdad Esfahbod
5e489670e1
Remove hb-warning.cc
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/2005
2019-10-22 15:03:47 -07:00
Garret Rieger
05bcdb39d8
Add a specialization of array_t:hash for hb_bytes_t and hb_ubytes_t.
2019-10-22 13:33:50 -07:00
Garret Rieger
95ab110cd9
Optimize intersects_array to fix fuzzer timeout.
2019-10-22 13:33:50 -07:00
Garret Rieger
be5cdcdfa2
Store the hash value of a key in item_t in hb_map to reduce the number of hash computations.
2019-10-22 13:33:41 -07:00
Qunxin Liu
b33a0d628e
fuzzer crash fix: Null-dereference WRITE
...
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=18363
2019-10-22 01:01:08 +03:30
Qunxin Liu
1f0a9d9be9
[subset] GPOS Lookup Type 2: PairPos
2019-10-21 12:35:28 -07:00
Qunxin Liu
b66094ada0
[subset] GSUB Lookup Type 6: ChainContextSubst
2019-10-18 16:52:55 -07:00
Garret Rieger
eff91bbb4b
Add missing pop() for the failure case of script subsetting.
2019-10-18 15:10:30 -07:00
Garret Rieger
eab191fd9c
Rewrite hash and == function for hb_array_t as a plain loop.
...
Profling showed that the current implementation were accounting for nearly all processing time in some cases. These implementations look to be about 10x faster.
2019-10-18 15:10:30 -07:00
Garret Rieger
831daf4c76
Enforce HB_MAX_LANGSYS limit during layout subsetting.
2019-10-18 15:10:30 -07:00
Garret Rieger
9871461bce
Enforce HB_MAX_SCRIPTS during subsetting of the script table.
2019-10-18 15:10:30 -07:00
Behdad Esfahbod
029775bcbd
[buffer] Minor; improve HB_NO_BUFFER_MESSAGE
2019-10-17 10:00:40 -07:00
Ebrahim Byagowi
9a68e6b901
[doc] minor
...
Addresses https://github.com/harfbuzz/harfbuzz/pull/2013/files#r335196908
2019-10-16 13:28:15 +03:30
Ebrahim Byagowi
b0b8551afc
[glyf] Use range_checker_t in composite_iter_t
2019-10-13 07:17:03 +03:30
Ebrahim Byagowi
06e35ce052
[glyf] minor
2019-10-13 07:17:03 +03:30
Ebrahim Byagowi
d13bb4bd94
[glyf] other cleanups
2019-10-13 07:17:03 +03:30
Ebrahim Byagowi
e7aa8c5d22
[glyf] Introduce glyf::Glyph, a hb_bytes_t/GlyphHeader pair
2019-10-13 07:17:03 +03:30
Ebrahim Byagowi
546ffc9faf
[glyf] minor
2019-10-13 07:17:03 +03:30
Ebrahim Byagowi
4299ea266e
[glyf] Move get_contour_points to GlyphHeader
2019-10-13 07:17:03 +03:30
Ben Wagner
b918cd8c76
Document hb_feature_t.
...
This documents hb_feature_t. This is motivated mostly by the ambiguity
of the units for 'start' and 'end' (clusters) and whether they are
inclusive or exclusive. This also documents that for lookup type 3 the
value is the one based index into the alternates and that in a list of
features later feature values override previous feature values with the
same tag.
2019-10-11 20:54:06 +03:30
Behdad Esfahbod
e637a4b3de
Merge pull request #2012 from harfbuzz/lepcha-oo
...
Reorder U+1C29 LEPCHA VOWEL SIGN OO
2019-10-11 10:28:58 +07:00
Ebrahim Byagowi
670fec231d
Minor, add a zero length tolerant memset, hb_memset
2019-10-10 09:21:08 +03:30
David Corbett
e4464f4484
Reorder U+1C29 LEPCHA VOWEL SIGN OO
2019-10-09 20:55:52 -04:00
Garret Rieger
e17e744300
Convert existing uses of serialize_append in gsub subsetting to use subset_offset_array.
2019-10-09 13:52:04 -07:00
Garret Rieger
36f18cecbb
Add subset_offset_array helper function which simplifies subsetting offset arrays during stream operations.
2019-10-09 13:52:04 -07:00
Ebrahim Byagowi
dc45f22521
[ot-metrics] Don't use mixed scaled and not scaled for generating extents
2019-10-08 23:27:39 +03:30
Ebrahim Byagowi
b068e25f8f
[glyf] Address Behdad's reviews
...
Addresses https://github.com/harfbuzz/harfbuzz/pull/1999#issuecomment-539298559
* Don't check against Null pool
* Remove cryptic _tt suffix
2019-10-08 16:29:19 +03:30
Ebrahim Byagowi
6961766db2
[glyf] fix scaling direction
2019-10-08 16:26:48 +03:30
Ebrahim Byagowi
0527fda4c7
minor
2019-10-08 16:19:39 +03:30
Ebrahim Byagowi
b2628f1a3e
[glyf] Move glyph bytes drop hints logic to GlyphHeader
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
1fb9c3b646
[glyf] Implement depth limit for add_gid_and_children
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
be0eddd418
[glyf] Move add_gid_and_children to glyf table
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
c7621cf211
Minor, replace hb_set_add with private API
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
ad86806dcb
[glyf] Move subset related methods inside GlyphHeader
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
7839e23558
[glyf] minor
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
cbefbb2439
[glyf] Move padding removal logic to GlyphHeader
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
1ab8f9aa7a
[glyf] minor
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
13fb5612ad
[glyf] Aggregate get_offsets uses
2019-10-08 15:40:29 +03:30
Ebrahim Byagowi
5179b96958
[cff] minor on number_t
2019-10-08 11:11:18 +03:30
Ebrahim Byagowi
d73cdcf361
[ot-font] Apply font scaling before turning to int
2019-10-08 11:11:18 +03:30
Ebrahim Byagowi
f2339964b7
[glyf] minor, remove GlyphHeader::simple_* helpers
2019-10-06 16:58:38 +03:30
Ebrahim Byagowi
2d7ca6a76a
[glyf] Move get_instruction_length inside GlyphHeader struct
2019-10-06 16:58:38 +03:30
Ebrahim Byagowi
50aef4d7f8
[glyf] cleanup
2019-10-06 16:58:38 +03:30
Ebrahim Byagowi
ee3f4630d7
[glyf] Remove get_composite_iter and refactor bytes_for_glyph for shape uses
2019-10-06 16:58:38 +03:30
Ebrahim Byagowi
8378ab96e2
[glyf] Rewrite composite iterator to new iterators convention
2019-10-06 13:49:45 +03:30
Ebrahim Byagowi
21c80d955f
[gvar] minor
2019-10-06 08:59:12 +03:30
Ebrahim Byagowi
5752863640
[glyf][gvar] Make HB_NO_VAR buildable
2019-10-06 08:59:12 +03:30
Ebrahim Byagowi
8e33510343
[gvar] minor
2019-10-06 08:59:12 +03:30
Ebrahim Byagowi
b3afa81644
[glyf] Use common convention of other tables access, format
2019-10-06 08:59:12 +03:30
Ebrahim Byagowi
88bd342c0f
[glyf] minor
2019-10-06 08:59:12 +03:30
Ebrahim Byagowi
ee7610181c
[hmtx] Use more conventional internal API style
2019-10-06 08:59:12 +03:30
Ebrahim Byagowi
c9577a630f
[hmtx] Use more optimal way to access glyf table
2019-10-06 08:59:12 +03:30
Michiharu Ariza
b9ff43c162
Implement gvar table and variable glyf
...
Split from Ariza's "[subset] TrueType/CFF2 variable font" work on #1594
2019-10-06 08:58:40 +03:30
Ebrahim Byagowi
79ec65ae10
[ot-font] Use var vmtx side bearing in calculating v-origin
2019-10-03 14:27:51 +03:30
Ebrahim Byagowi
3fd555be54
[hmtx] Prepare to fix and minor fixes
2019-10-03 13:34:43 +03:30
Michiharu Ariza
6d09b5a8a0
Implement hmtx/vmtx metrics read from hvar/vvar
2019-10-03 13:34:43 +03:30
Ebrahim Byagowi
2d7221a0e3
[cff] minor
2019-10-01 15:05:02 +03:30
Ebrahim Byagowi
0558413f27
Minor, tweak spaces
2019-10-01 13:50:11 +03:30
Ebrahim Byagowi
51b720f686
Fix -Wsizeof-array-div clang warning
2019-10-01 12:40:41 +03:30
Behdad Esfahbod
faace9437e
Merge pull request #1807 from harfbuzz/subset-varstore
...
VariationStore serializer
2019-09-30 13:34:05 -07:00
Behdad Esfahbod
e48ef0804a
2.6.2
2019-09-30 12:39:06 -07:00
Behdad Esfahbod
d6ad613159
[docs] Misc fixes
2019-09-30 10:40:25 -07:00
Ebrahim Byagowi
2dce85ed06
[icu] Remove HB_ICU_STMT ( #1993 )
...
And ignore extra semicolon error to ICU versions < 65
2019-09-26 10:45:59 -07:00
Iceflower
d6a83abd6a
Define HB_UNUSED for clang
2019-09-26 14:12:20 +03:30
Iceflower
c4567968cd
[dwrite] Fix extra semicolon issue
2019-09-26 13:05:27 +03:30
Qunxin Liu
b0c3eb06b6
[subset] GPOS Lookup Type 3: CursivePos
2019-09-25 05:43:25 +09:00
Ebrahim Byagowi
68d39ea486
Revert previous change and fix -Wrange-loop-analysis complains
2019-09-24 13:52:46 +03:30
Ebrahim Byagowi
cbc0646a6c
Minor, normalize for each calls
2019-09-24 12:09:20 +03:30
Ebrahim Byagowi
22b6c6a5c7
[serialize] use for each as #resolve_links, format
2019-09-24 12:06:28 +03:30
Qunxin Liu
512551f276
memory leak fix in serializer ( #1988 )
2019-09-23 17:28:16 -07:00
Ebrahim Byagowi
f0a7677993
[gpos] minor
2019-09-23 21:09:39 +03:30
Ebrahim Byagowi
035ec3d1b4
[cmap] remove has_format14, minor format
...
fixes #1986
2019-09-23 20:51:43 +03:30
Ebrahim Byagowi
c1a585fab0
[gpos] minor
2019-09-21 23:36:29 +04:30
Ebrahim Byagowi
d87d38998a
Fix clang -Wrange-loop-analysis complains
...
./hb-ot-layout-gpos-table.hh:674:43: error: loop variable '_' is always a copy because the range of type 'hb_zip_iter_t<hb_iter_type<hb_array_t<const OT::IntType<unsigned short, 2> > &>, hb_iter_type<hb_array_t<const OT::IntType<unsigned short, 2> > &> >' (aka 'hb_zip_iter_t<hb_array_t<const OT::IntType<unsigned short, 2> >, hb_array_t<const OT::IntType<unsigned short, 2> > >') does not return a reference [-Werror,-Wrange-loop-analysis]
for (const hb_pair_t<Value, Value>& _ : hb_zip (val_iter, first_val_iter))
^
./hb-ot-layout-gpos-table.hh:674:12: note: use non-reference type 'hb_pair_t<OT::Value, OT::Value>' (aka 'hb_pair_t<IntType<unsigned short, 2>, IntType<unsigned short, 2> >')
for (const hb_pair_t<Value, Value>& _ : hb_zip (val_iter, first_val_iter))
and
In file included from hb-subset.cc:44:
./hb-ot-vorg-table.hh:87:34: error: loop variable '_' is always a copy because the range of type 'hb_map_iter_t<hb_filter_iter_t<hb_sorted_array_t<const OT::VertOriginMetric>, const hb_set_t *, OT::HBGlyphID OT::VertOriginMetric::*, nullptr>, (lambda at ./hb-ot-vorg-table.hh💯 15), hb_function_sortedness_t::NOT_SORTED, nullptr>' does not return a reference [-Werror,-Wrange-loop-analysis]
for (const VertOriginMetric& _ : it)
^
./hb-ot-vorg-table.hh:113:17: note: in instantiation of function template specialization 'OT::VORG::serialize<hb_map_iter_t<hb_filter_iter_t<hb_sorted_array_t<const OT::VertOriginMetric>, const hb_set_t *, OT::HBGlyphID OT::VertOriginMetric::*, nullptr>, (lambda at ./hb-ot-vorg-table.hh💯 15), hb_function_sortedness_t::NOT_SORTED, nullptr>, nullptr>' requested here
vorg_prime->serialize (c->serializer, it, defaultVertOriginY);
^
./hb-ot-vorg-table.hh:87:10: note: use non-reference type 'OT::VertOriginMetric'
for (const VertOriginMetric& _ : it)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-09-21 17:52:01 +04:30
Ebrahim Byagowi
6e42a418c8
Minor, turn more of hb_apply to for each
2019-09-21 17:52:01 +04:30
Ebrahim Byagowi
385741d565
[cmap] Turn hb_apply into foreach where possible
2019-09-21 15:33:02 +04:30
Ebrahim Byagowi
1023c2cc6d
[cmap] minor
2019-09-21 15:33:02 +04:30
Ebrahim Byagowi
ead46eefe3
minor, use internal API instead public hb_set_has
2019-09-21 15:33:02 +04:30
Ebrahim Byagowi
d8af4e7701
[cmap] minor, turn 8 spaces to tab
2019-09-21 15:33:02 +04:30
Qunxin Liu
4315666283
[subset] updates according to review comments
2019-09-20 07:55:11 +09:00
Qunxin Liu
2583afa0eb
[subset] subsetting cmap14
2019-09-20 07:55:11 +09:00