|
e30511a8
|
2022-01-14T16:20:31
|
|
[map] Correct previous commit, if (...) was reversed.
|
|
ff4e8c7e
|
2022-01-14T16:20:31
|
|
[map] Fix bad memory access if hb_map.fini() was called twice.
|
|
8a69e006
|
2022-01-13T16:17:34
|
|
[meta] Use std::addressof() instead of hb_addressof()
|
|
b7b0a15f
|
2022-01-13T15:33:27
|
|
[meta] Remove hb_add_const
|
|
3b2e6042
|
2022-01-13T15:32:46
|
|
[meta] Use std::is_const instead of hb_is_const
|
|
909dde9d
|
2022-01-13T15:30:10
|
|
[meta] Use std::is_reference instead of hb_is_reference
|
|
47afb3ef
|
2022-01-13T15:26:07
|
|
[meta] Replace hb_is_pointer with std::is_pointer
|
|
956e0a4d
|
2022-01-13T15:06:58
|
|
[map] Destruct objects
|
|
726b1a8b
|
2022-01-13T18:30:52
|
|
Convert fallback kwargs to [provide] entries.
|
|
bc0a5fdf
|
2022-01-13T13:34:22
|
|
[test-map] Add disabled tests with std::string
|
|
985b63b3
|
2022-01-13T13:33:07
|
|
[map] Allow invalid items to be pointer to static object
By derefencing them when necessary.
Also, we do not rely on trivially-copyable, so remove that assertion.
|
|
98b26eed
|
2022-01-13T13:12:10
|
|
[check-static-inits] Only check library object files
|
|
1e27f95d
|
2022-01-13T13:10:47
|
|
[algs] Add hb_coerce()
|
|
5a91db11
|
2022-01-13T12:44:48
|
|
[map] Remove constexpr invalid items
These were non-workable in the general case, eg std::string.
|
|
114046dc
|
2022-01-13T12:38:26
|
|
[map] Construct objects
|
|
b15e497d
|
2022-01-13T14:10:23
|
|
Fix the docs build
This was inadvertendly broken in f956ecdbaffbb8643.
Sorry
|
|
ca4f56bd
|
2022-01-13T11:48:34
|
|
[map] Massage some more
Towards being able to store arbitrary types.
|
|
cfe2b661
|
2022-01-13T11:42:48
|
|
[algs] Fix hash chaining to std::hash()
|
|
87496bf6
|
2022-01-13T11:03:45
|
|
[subset] fix fuzzer timeout if visisted_paint goes into error.
|
|
4ced2e8a
|
2022-01-13T09:05:04
|
|
docs: Add some details
Mention immutability in the object model section.
|
|
bb330c6a
|
2022-01-13T08:57:56
|
|
docs: Fix a typo
|
|
16cfe34a
|
2022-01-13T11:01:22
|
|
[git.mk] Update
|
|
0acf466c
|
2022-01-13T01:29:22
|
|
[doc] Fix hb_font_set_synthetic_slant param name
|
|
0b2c514f
|
2022-01-12T11:20:58
|
|
More macro cleanup
|
|
0a42f46c
|
2022-01-12T11:16:02
|
|
Fix compiler warning
Fixes https://github.com/harfbuzz/harfbuzz/issues/3364
|
|
72f0b24e
|
2022-01-12T13:08:02
|
|
docs: Clarify variation apis (#3363)
Make it explicit that the variations setters
replace all existing variations, even if
not all axes are included in the provided
values.
Co-authored-by: Matthias Clasen <mclasen@redhat.com>
|
|
befe3b5d
|
2022-01-12T13:07:25
|
|
color: Document empty returns (#3362)
Document that the SVG and PNG getters return
the singleton empty blob if the glyph has no
color.
Fixes: #1413
Co-authored-by: Matthias Clasen <mclasen@redhat.com>
|
|
13643934
|
2022-01-12T10:54:28
|
|
Clean up HB_NO_SETLOCALE
https://github.com/harfbuzz/harfbuzz/pull/3358#pullrequestreview-850500143
|
|
53847dba
|
2022-01-10T15:04:47
|
|
[algs] Call std::hash from hb_hash()
|
|
74811c50
|
2022-01-10T14:57:38
|
|
[map] Map == / != use correct types
|
|
b8c2c1ab
|
2022-01-11T13:14:44
|
|
Use freetype from CMake target when present (#3361)
Add check for Freetype CMake target. If it is found:
- enable HB_HAVE_FREETYPE option
- add HAVE_FREETYPE=1 define
- bypass finding Freetype as cmake package
- add Freetype CMake target as dependency to harfbuzz
|
|
ce7f19a2
|
2022-01-10T14:40:27
|
|
Revert "[map] Actually use k/v invalid types for declaration!"
This reverts commit 6f559346ac70fd188cb22d41f4b03ec227feee25.
Err. My bad.
|
|
6f559346
|
2022-01-10T14:29:36
|
|
[map] Actually use k/v invalid types for declaration!
|
|
a45a6305
|
2022-01-08T15:47:33
|
|
Fix unintentional locale dependency (#3358)
Avoid unintentional locale dependency
hb_variation_to_string uses sprintf with %g, which will produce
a locale-dependent decimal point, which is not desired here.
The output is supposed to be compatible with CSS syntax, and
that always uses '.' for the decimal point.
Fix this by changing the per-thread locale to "C" around sprintf call.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3355
Fixes https://github.com/harfbuzz/harfbuzz/pull/3357
Fixes https://github.com/harfbuzz/harfbuzz/pull/3358
Co-authored-by: Matthias Clasen <mclasen@redhat.com>
|
|
d70825a6
|
2022-01-02T11:28:28
|
|
docs: Add some details about coordinates
Mention what the effective values are when
coordinates have not been set.
|
|
0a5c1c97
|
2022-01-04T14:18:38
|
|
[failing-alloc] Make it compile as C++ as well
|
|
bea5369c
|
2022-01-04T10:52:05
|
|
[buffer] Rename swap_buffers() to sync()
|
|
c5e5d5e0
|
2022-01-04T07:33:59
|
|
Merge pull request #3353 from harfbuzz/buffer-create-similar
Add `hb_buffer_create_similar()`; use it in util
|
|
d1e7df5c
|
2022-01-04T07:32:04
|
|
[buffer] Add enter()/leave() pair around shape()
|
|
43be5ba4
|
2022-01-04T07:26:53
|
|
[buffer] Group shape-related members together
|
|
52f5711e
|
2022-01-03T11:57:42
|
|
[buffer] Add hb_buffer_create_similar()
Fixes https://github.com/harfbuzz/harfbuzz/issues/1555
|
|
f643b81f
|
2022-01-03T11:45:31
|
|
[buffer] Clean up internal state bookkeeping
hb_buffer_reset() was NOT resetting cluster_level. Ouch! Fix that.
Part of https://github.com/harfbuzz/harfbuzz/issues/1555
|
|
d0c3515c
|
2022-01-03T11:26:41
|
|
[util] Copy unicode_funcs in copy_buffer_properties()
Part of https://github.com/harfbuzz/harfbuzz/issues/1555
|
|
34f5b855
|
2022-01-03T11:25:06
|
|
[util] Simplify copy_buffer_properties()
Now that hb_buffer_append() overlays segment_properties we can do this.
Part of https://github.com/harfbuzz/harfbuzz/issues/1555
|
|
101d07ef
|
2022-01-03T11:24:07
|
|
[util] Move copy_buffer_properties() out of loop
Now that hb_buffer_append() overlays properties, we can do this.
Part of https://github.com/harfbuzz/harfbuzz/issues/1555
|
|
36e9f467
|
2022-01-03T11:23:14
|
|
[buffer] Overlay segment-properties in hb_buffer_append()
Part of https://github.com/harfbuzz/harfbuzz/issues/1555
|
|
6a669928
|
2022-01-03T11:21:29
|
|
Add hb_segment_properties_overlay()
New API:
+ hb_segment_properties_overlay()
|
|
165a6073
|
2022-01-02T12:02:20
|
|
Merge pull request #3338 from harfbuzz/slant
[font] Add public API for synthetic slant
|
|
3fc2e654
|
2022-01-02T11:56:45
|
|
[metrics] Fix slant calc
|
|
a7751277
|
2022-01-02T11:50:02
|
|
[docs] Add hb_font_[gs]et_synthetic_slant()
|
|
4ab94443
|
2022-01-02T11:26:45
|
|
[metrics] Ouch. Fix slant code
|
|
f7d49d9c
|
2022-01-02T11:16:33
|
|
[metrics] Simplify
|
|
f1ba1f94
|
2022-01-02T10:58:25
|
|
[metrics] Only scale caret rise/run if font is slanted
|
|
45c2b6e3
|
2022-01-02T10:55:11
|
|
[metrics] Harden math
|
|
fa008a02
|
2022-01-02T10:46:38
|
|
[metrics] Implement synthetic slant for caret slope
Part of https://github.com/harfbuzz/harfbuzz/pull/3338
|
|
fc329f66
|
2022-01-02T10:41:41
|
|
[metrics] Scale up horizontal caret rise/run
Eg. if rise/run are 1/0, we now return upem/0. This is equivalent.
Part of https://github.com/harfbuzz/harfbuzz/pull/3338
|
|
a3265e1e
|
2022-01-02T10:02:41
|
|
Typo
|
|
0df83f52
|
2022-01-02T08:01:11
|
|
Fix test
|
|
6356da88
|
2022-01-02T07:55:56
|
|
[docs] Update
|
|
5b87c30d
|
2022-01-02T07:53:45
|
|
[font] Mark hb_font_get_var_coords_design() non-experimental
Any remaining issue with the API will address later by deprecating it.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1865
|
|
2d42fc9f
|
2022-01-02T07:45:10
|
|
[font] Load named-instance if face index top bits are set
This matches FreeType behavior.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3348
|
|
da7dba00
|
2022-01-01T11:20:20
|
|
[face] Clarify face_index handling
Fixes https://github.com/harfbuzz/harfbuzz/issues/3347
|
|
6da4b80e
|
2021-12-22T21:51:03
|
|
[hb-ot-var] Specify normalized 2.14 docs
Fixes https://github.com/harfbuzz/harfbuzz/issues/3345
|
|
1b51be57
|
2021-12-22T21:43:48
|
|
[hb-ot-var] Actually set in/out argument
Fixes https://github.com/harfbuzz/harfbuzz/pull/3344
|
|
06ee4021
|
2021-12-21T14:14:09
|
|
Use invisible-glyph for spaces if font has no ASCII space
Fixes https://github.com/harfbuzz/harfbuzz/issues/3340
Should add tests ideally.
|
|
602bd396
|
2021-12-19T21:40:25
|
|
[style] Adjust font slant angle for synthetic slant value
Part of https://github.com/harfbuzz/harfbuzz/pull/3338
|
|
ff697deb
|
2021-12-19T07:25:37
|
|
[GPOS] Apply font synthetic slant
Part of fixing https://github.com/harfbuzz/harfbuzz/issues/3196
|
|
810f5d71
|
2021-12-18T15:12:26
|
|
[font] Add public API for slant
Not hooked up internally to anything.
New API:
+ hb_font_set_synthetic_slant()
+ hb_font_get_synthetic_slant()
Part of fixing https://github.com/harfbuzz/harfbuzz/issues/3196
|
|
067f90a8
|
2021-12-14T16:24:38
|
|
[subset] Fix for fuzzer timeout.
Fixes https://oss-fuzz.com/testcase-detail/5549945449480192
In prune_langsys: move LangSys visited check up before any work is done for a LangSys. In this particular case the compare() method is responsible for the majority of the time spent and wasn't being guarded with a visisted check.
|
|
c4573c2e
|
2021-12-14T14:49:15
|
|
[repacker] don't infinite loop if visited or roots is in error.
Fixes https://oss-fuzz.com/testcase-detail/5205038086094848
|
|
449c4296
|
2021-12-12T07:50:06
|
|
[ci] Try harder to fix this randomly failing job
The default --num-processes is the number of CPUs multiplied by 5,
which seems to give this VM a hard-time. Even the number of CPUs is too
much, so lets use half of that (I’m adding one just in case the division
gives zero).
|
|
52a33a15
|
2021-12-12T07:43:58
|
|
[ci] Try to fix the randomly failing valgrind job
|
|
be91d291
|
2021-12-12T04:45:54
|
|
3.2.0
|
|
77507a1d
|
2021-12-10T14:10:04
|
|
[subset] Don't double count visit lookups in closure_lookups
Each recursed lookup was getting counted once in closure_lookups() and then again in hb_closure_lookups_context_t::recurse.
|
|
d6702570
|
2021-12-10T13:52:05
|
|
[subset] reset the visited lookup count before each closure iteration.
|
|
23159084
|
2021-12-10T15:00:16
|
|
[morx] Reverse graphemese, not whole buffer
Fixes https://github.com/harfbuzz/harfbuzz/issues/3314
Supersedes https://github.com/harfbuzz/harfbuzz/pull/3315
|
|
5b995526
|
2021-12-10T14:59:56
|
|
[buffer] Fix reverse_group() to reverse() at the end
|
|
21c4fc10
|
2021-12-10T13:02:43
|
|
[buffer] Add optional merge_clusters arg to reverse_groups()
|
|
e949e512
|
2021-12-10T12:58:27
|
|
[ot-layout] Port foreach_grapheme to buffer foreach_group
|
|
eb96e69d
|
2021-12-10T12:55:29
|
|
[buffer] Add foreach_group()
|
|
1b78e04c
|
2021-12-10T12:45:43
|
|
[buffer] Add ::reverse_groups()
|
|
4cd96e73
|
2021-12-10T12:33:21
|
|
[buffer] Inline revers_range() / reverse()
|
|
5914acb3
|
2021-12-10T10:05:47
|
|
[repacker] Clear distance and position cache when assigning a new space.
A change in space will effect the distance assigned to the node and any of it's children so clear the distance cache.
|
|
706014f6
|
2021-12-01T20:20:12
|
|
[subset] (Chain)ContextSubst glyph_closure fix
- When pos_glyphs is empty, use current full glyphs set as input for
subsequent recursive closure process
- Also increase max_lookup_visit_count to 35000 cause a real font file hit
previous limit 20000 and some lookups are dropped unexpectedly
|
|
441877f5
|
2021-12-09T16:38:05
|
|
[repacker] add test case for using max priority to resolve an overflow.
|
|
be2c488e
|
2021-12-09T15:44:06
|
|
[repacker] Improve vertex priority packing.
Previous priority implementation would move a node further back within it's layer, but at max priority was unable to move any further up than that. This updates the implementation to have 3 priority levels:
1. Distance is reduced by half of table size.
2. Distance is reduced by full table size (move to beginning of the layer).
3. Distance is set to 0. Vertex will be packed as soon as possible.
Also makes the iterative resolutions aware of max priority, so it won't keep trying to raise priority beyond the maximum.
|
|
2404617a
|
2021-12-08T21:10:22
|
|
Update language system tag registry to OT 1.9
|
|
002a1f70
|
2021-12-08T10:45:30
|
|
[ft] Disable vertical funcs if HB_NO_VERTICAL
|
|
ef14cad7
|
2021-12-08T10:43:52
|
|
[GPOS] Disable vertical advance if HB_NO_VERTICAL
|
|
6ed22de1
|
2021-12-08T10:40:40
|
|
[CONFIG] Fix HB_NO_VERTICAL build without HB_TINY
|
|
53eebc7c
|
2021-12-08T08:32:41
|
|
[CONFIG] Add HB_NO_VERTICAL
|
|
9bc5d290
|
2021-12-08T08:16:17
|
|
[TINY] Don't disable VORG table in any config profile
Is needed for vertical layout of CFF fonts.
Fixes https://github.com/harfbuzz/harfbuzz/discussions/3294#discussioncomment-1770313
|
|
3e4a2509
|
2021-12-06T16:00:15
|
|
[repacker] add a maximum number of roots that can be moved in one iteration.
Set to half of the roots in a space. This prevents the repacker from moving all roots in a space to a new space if their are overflows in every root.
|
|
02b12d79
|
2021-12-06T15:23:35
|
|
[repacker] Move all overflowing roots to a new space simultaneously.
|
|
fa966bcc
|
2021-12-06T12:54:19
|
|
[repacker] create repacker output buffer after final length is known.
Don't rely on a buffer provided by the caller, as it may not be large enough.
|
|
51655a07
|
2021-12-05T19:27:57
|
|
[subset] COLR : only include glyphs after COLR closure
|
|
70f8c57e
|
2021-12-04T19:49:23
|
|
[buffer] Rename find_min_cluster
|
|
94d43c00
|
2021-12-04T16:56:39
|
|
[buffer] Merge and rename clear_glyph_flags()
|
|
b95d252f
|
2021-12-03T11:49:55
|
|
[CONFIG] Add HB_CONFIG_OVERRIDE_H to simplify config overrides
|
|
74b46b29
|
2021-12-02T19:50:16
|
|
[subset] MATH: don't serialize coverage table when iterator is empty
when iterator is empty, just set coverage offset to 0.
serialize() in coverage will at lease write out a 16-bit format header.
|