Behdad Esfahbod
f567b55619
[face] Use max numGlyphs of maxp and loca
2022-02-15 18:26:43 -06:00
Behdad Esfahbod
c8fd8c1337
[ot-face] Use core tables
2022-02-15 18:13:44 -06:00
Behdad Esfahbod
2a430790ad
[machinery] Add "core table" machinery
...
To be used in subsequent commit; or tried anyway.
2022-02-15 17:53:33 -06:00
Behdad Esfahbod
67eb9acf79
[config] Add HB_NO_BORING_EXPANSION
2022-02-15 17:17:49 -06:00
Behdad Esfahbod
8b7ccc41c4
[hmtx] Implement [boring-expansion] >64k expansion
...
This implements https://github.com/be-fonts/boring-expansion-spec/issues/7
2022-02-15 14:15:12 -06:00
Behdad Esfahbod
431c948ed7
[hmtx] Document
2022-02-14 14:13:04 -06:00
Behdad Esfahbod
be4ddcc30b
[hmtx] Rename internal num_advances to num_long_metrics
2022-02-14 14:12:07 -06:00
Behdad Esfahbod
622cbc485f
[hmtx] Internal rename num_metrics to num_bearings
2022-02-14 14:09:40 -06:00
Behdad Esfahbod
ed6d287d11
[ot-face] Load num-glyphs from `loca` table before `maxp`
...
Implements [boring-expansion] [maxp] Relax
https://github.com/be-fonts/boring-expansion-spec/issues/6
2022-02-14 13:52:30 -06:00
Behdad Esfahbod
93962977bc
Remove return of void
2022-02-13 19:38:59 -06:00
Ebrahim Byagowi
d4588204e5
[draw/glyf] Emit empty contours
...
This makes it actually match freetype behaviour even though rasterizer
should filter such contours specially for stroking.
See https://github.com/harfbuzz/harfbuzz/pull/3411#discussion_r802283827 for the context.
2022-02-13 23:50:53 +03:30
Behdad Esfahbod
94517850dd
[algs] Fix typo in hb_pair_t conversion operator
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/2083
2022-02-13 13:39:26 -06:00
Khaled Hosny
f942874fac
[draw] Fix some introspection warnings
2022-02-13 13:21:15 -06:00
Behdad Esfahbod
0858463ac3
[draw/glyf] Don't skip empty contours of size 2
...
See:
https://github.com/harfbuzz/harfbuzz/pull/3411#discussion_r804988217
2022-02-13 13:21:15 -06:00
Behdad Esfahbod
57aa8c3b3a
[draw] Another try at a stable draw moveto semantic
2022-02-13 13:21:15 -06:00
Behdad Esfahbod
151f205819
[draw] Emit move_to immediately, like other operators
2022-02-13 13:21:15 -06:00
Khaled Hosny
628847b5c8
[doc] Link to respective draw callback functions
2022-02-13 13:21:14 -06:00
Khaled Hosny
7245298e25
[doc] Document HB_DRAW_STATE_DEFAULT
2022-02-13 13:21:14 -06:00
Khaled Hosny
8e892bdb54
[doc] Message draw documentation a bit
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
cdf1cb35db
[draw] Destroy callback data
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
c56c13756b
[draw] Document more
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
2376230523
[draw] Flesh out docs a bit
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
bc6c3b8401
[font] Update get_glyph_shape() doc
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
732c749ef7
[font] Adjust synthetic-slant docs
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
59067db9f4
[font/draw] Slant drawings
...
Need to update hb_font_set_synthetic_slant() docs now that we do this.
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
aa5c7a3811
[draw-session] Add slant
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
4f2704adb6
[draw] Add more reserved items to hb_draw_state_t
...
Since these are free basically.
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
2ce19f2868
[font/draw] Fetch shape from parent font if not implemented in font
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
d6b61dff95
[draw] Minor cleanup
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
6d5b998f25
[ft/draw] Implement hb-draw for hb-ft
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
370bec938b
[draw] Rename internal draw_session_t to hb_draw_session_t
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
a357e5d889
[draw] Do quadratic-to-cubic conversion in nil quadratic implementation
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
c681331c3f
[draw] Rename internal draw_helper_t to draw_session_t
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
f1a9a9ccaf
[draw-state] Pass state down to callbacks
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
a9dd9f0bae
[draw] Add public move_to/line_to/... API that take a draw-state
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
ebc2a133c3
[draw] Rename internal methods
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
86fcd4fe98
[draw] Simplify start_path
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
1740916ede
[draw] Remove check for no-op
...
This is unnecessary overhead. Up to rasterizers to handle this. Plus,
this throws off point-numbers in uses that rely on it.
Disabled one test that broke with this.
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
fc78592e67
[draw-state] Add type and use in draw-helper
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
a755f93e8d
[draw] Add TODO
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
cdb1a1fc06
[draw] Add REPLACEME
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
8b4f429000
[draw] Virtualize hb_font_draw_glyph() into hb_font_get_glyph_shape()
...
To be implemented in hb-ft.
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
92e6e53b30
[draw] Rename user_data to draw_data
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
3b915389b5
[draw] Remove unneeded roundf() calls
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
2bed4f46fb
[draw] Fix draw signatures
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
e0ac6c587b
Remove remaining traces of HB_EXPERIMENTAL_API
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
27dfd69fc7
[draw] Another Since: tag update
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
7ac23f4e78
[draw] Whitespace
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
e157b50345
[draw] Remove return value of hb_font_draw_glyph()
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
ddc36df332
[draw] Move hb_font_draw_glyph() to hb-draw-glyph.cc
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
9a1508a2be
[draw] Replace API Since tags with REPLACEME
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
a428c1193c
[main] Fix compiler warnings
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
35190dc961
[draw] Convert API to float instead of hb_position_t
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
d6e49b8278
[font] Add em_fscalef_[xy] That take and return float
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
6c0b65a6a8
[font] Add em_scaleff() that returns float
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
dd7b6e2c3f
[draw] Remove EXPERIMENTAL_API tag
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
7af165dbf0
Fix compiler warning
2022-02-12 21:25:36 -06:00
Khaled Hosny
0a12996134
3.4.0
2022-02-13 00:30:50 +02:00
Khaled Hosny
41815a0d63
[name] Extraneous (out) annotation in return value
2022-02-13 00:00:01 +02:00
Behdad Esfahbod
b263371b09
Merge pull request #3398 from harfbuzz/buffer-verify
...
Add HB_BUFFER_FLAG_VERIFY
2022-02-12 15:06:47 -06:00
Behdad Esfahbod
42b119edb5
[hmtx] Remove other subset-specific method from hmtx accelerator
2022-02-12 14:22:35 -06:00
Behdad Esfahbod
9ba520b5d1
[hmtx] Remove one subset-specific method from hmtx accelerator
...
Looks ugly but is the right thing to do.
2022-02-12 14:22:35 -06:00
Garret Rieger
27a6c895ba
[subset] Fix memory leak in plan creation.
2022-02-11 16:19:43 -08:00
Garret Rieger
670ef070bd
[subset] Change subset plan create to be or_fail.
2022-02-11 16:01:33 -08:00
Garret Rieger
ae8d373bcf
[subset] add subset plan reference, set/get user data functions.
2022-02-11 14:54:23 -08:00
Garret Rieger
b65e48a786
[subset] Add subset plan to public API.
...
Add the ability to create a subset plan which an be used to gather info on things like glyph mappings in the final subset. The plan can then be passed on to perform the subsetting operation.
2022-02-11 14:37:21 -08:00
Behdad Esfahbod
6893723879
[machinery] Allow using lazy-loader with void*
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3427
2022-02-11 14:28:51 -06:00
Chun-wei Fan
52c536bb8d
hb-algs.hh: Fix build on Visual Studio 2015
...
The compiler does not recognize the std::hash call on
hb_decay<decltype (hb_deref (v)>, so give it a shove so that it is recognized
there.
2022-02-10 13:26:56 -06:00
Alexis King
81754a5a96
[ot-math] Add hb_ot_math_get_glyph_kernings
...
closes #3396
2022-02-09 12:03:07 -06:00
Alexis King
1bc4bad7a5
[ot-tag] Add HB_SCRIPT_MATH (Zmth) and map it to OT ‘math’ tag
...
The ISO 15924 code for mathematical notation is ‘Zmth’, but the
OpenType script is ‘math’.
2022-02-08 12:40:15 -06:00
Khaled Hosny
76cd8a4737
[arabic] Update to AMTRA revision 6
...
https://www.unicode.org/reports/tr53/tr53-6.html#Modifications
2022-02-08 12:38:51 -06:00
Khaled Hosny
ac46c3248e
3.3.2
2022-02-06 15:41:18 +02:00
Behdad Esfahbod
88798ee8be
[GPOS] Disable split-kerning
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3408
Reverts https://github.com/harfbuzz/harfbuzz/pull/3235
Fixes https://github.com/harfbuzz/harfbuzz/pull/3235#issuecomment-1029814978
2022-02-04 19:01:57 -06:00
Behdad Esfahbod
9177953720
[atexit] Allow hb_atexit redefinition
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3412
2022-02-04 12:38:45 -06:00
Behdad Esfahbod
8670ffbf4c
[buffer] Comment
2022-02-03 11:19:23 -06:00
Behdad Esfahbod
e59da2871a
[glyf] Don't store face in accelerator
2022-02-01 16:32:39 -06:00
Khaled Hosny
45df259538
3.3.1
2022-01-31 23:06:10 +02:00
Garret Rieger
4e2f409bce
[subset] Don't hold references to members of the active_glyph_stack.
...
These references may get invalidated after the vector for the stack is resized. Fixes: https://oss-fuzz.com/testcase-detail/5422577634377728
2022-01-31 22:58:53 +02:00
Khaled Hosny
98da330638
3.3.0
2022-01-31 18:39:06 +02:00
David Corbett
ae9afd9772
Let BCP 47 tag "mo" fall back to OT tag 'ROM '
2022-01-30 14:32:59 -05:00
David Corbett
a184c5f851
Don’t always inherit from macrolanguages
...
If an OpenType tag maps to a BCP 47 macrolanguage, that is presumably to
support the use of the macrolanguage as a vague stand-in for one of its
individual languages. For example, "ar" and "zh" are often used for
"arb" and "cmn". When the OpenType tag maps to a macrolanguage and some
but not all of its individual languages, that indicates that the
OpenType tag only corresponds to the listed individual languages (which
may be referred to using the macrolanguage subtag) but not the missing
individual languages. In particular, INUK (Nunavik Inuktitut) is mapped
to "ike" (Eastern Canadian Inuktitut) and "iu" (Inuktitut) but not to
"ikt" (Inuinnaqtun), so "ikt" should not inherit the INUK mapping from
its macrolanguage "iu".
2022-01-30 13:28:23 -05:00
Behdad Esfahbod
b47b3b9972
[fallback-kern] Move buffer message to correct position
2022-01-29 10:24:38 -07:00
Behdad Esfahbod
e986c12075
[verify] Show buffer input text when verification fails
2022-01-29 09:08:48 -07:00
Behdad Esfahbod
3972e0a8f1
[buffer] Whitespace
2022-01-29 08:22:19 -07:00
David Corbett
0b1bf89cc2
Replace “[family]” with “[collection]”
...
Not all language collections are language families.
2022-01-29 10:15:23 -05:00
David Corbett
0e31595e0d
Infer tag mappings for unregistered macrolanguages
...
Every macrolanguage not mentioned in the OT language system tag registry
is mapped to every tag of its individual languages, if those have
registered tags.
2022-01-29 10:15:23 -05:00
David Corbett
5a6545940a
Add the language system tag INUK
2022-01-28 21:29:43 -05:00
Garret Rieger
bc899650c7
[subset] Fix for issue #3397 .
...
cur_intersected_glyphs gets modified during recursion leading to incorrect filtering of sub tables in some cases. So don't use cur_intersected_glyphs. Instead just add an additional entry onto the parent_active_glyphs () stack.
Additionaly expands NotoNastaliqUrdu tests to include coverage of the issue from #3397 .
2022-01-28 14:20:33 -08:00
Garret Rieger
f3c1f4f0da
[subset] convert active_glyphs_stack to be a vector of hb_set_t instead of hb_set_t*.
2022-01-28 14:20:33 -08:00
Behdad Esfahbod
476a6377a5
[buffer] Document HB_BUFFER_FLAG_VERIFY
2022-01-28 15:05:10 -07:00
Behdad Esfahbod
5b1d813b69
[config] Enable HB_NO_BUFFER_VERIFY in HB_LEAN
2022-01-28 13:53:44 -07:00
Behdad Esfahbod
61823838f9
[buffer] Add HB_BUFFER_FLAG_VERIFY
...
Move buffer verification code inside the library, from util/.
Part of https://github.com/harfbuzz/harfbuzz/issues/3010
2022-01-28 13:53:44 -07:00
Behdad Esfahbod
7c704d8982
[buffer] Make hb_buffer_append() take a const argument
2022-01-28 13:53:44 -07:00
Behdad Esfahbod
24650624c8
[font] Fix build with no-var configs
2022-01-28 13:53:21 -07:00
Behdad Esfahbod
91b779e23c
Avoid redefinition of HB_NO_SETLOCALE in certain configs
2022-01-28 13:52:15 -07:00
Khaled Hosny
fa29006bfa
[doc] Fix generation of hb_glyph_flags_t docs
...
GTK-Doc does not like the empty lines here, and interprets everything
after the first empty line as the description of the enum itself not a
specific member and the generated text makes no sense.
Removing the empty lines makes the text harder to read (both in source
and HTML), but at least it is correctly organized.
2022-01-26 19:10:23 -08:00
Behdad Esfahbod
e9cc5f6cdb
Merge pull request #3297 from harfbuzz/unsafe-to-concat
...
Implement UNSAFE_TO_CONCAT flag
2022-01-26 12:23:29 -08:00
Behdad Esfahbod
540af548dc
[unsafe-to-concat] Clarify documentation as per feedback
...
Fixes https://github.com/harfbuzz/harfbuzz/pull/3297#discussion_r754395825
2022-01-25 09:10:56 -07:00
Behdad Esfahbod
bad5c94562
[test] Remove HB_UNUSED
2022-01-23 10:53:19 -07:00
Behdad Esfahbod
6c09a8b5b0
[test-serialize] Assert len
2022-01-23 10:52:13 -07:00
Behdad Esfahbod
76c6f4164f
[test] Add test-serialize
2022-01-23 10:43:37 -07:00
Behdad Esfahbod
3324606492
[buffer] Oops
2022-01-22 15:46:13 -07:00
Behdad Esfahbod
20031ddbb8
[unsafe-to-concat] Mark in all other shapers
...
unsafe_to_break() implies unsafe-to-concat; but setting the flag
manually wasn't.
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
6e345f709d
Cosmetic
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
374a6f186d
[fallback-shape] Add buffer trace log
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
bcdfedbc09
[unsafe-to-concat] Mark as unsafe in kern machine
...
Fixes that last test. Yay!
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
14d43d1235
[unsafe-to-concat] Adjust end conditions
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
8663eda4fd
[unsafe-to-concat] More annotations for MarkMarkPos
...
Failures down to one:
265/401 harfbuzz:shaping+aots / lookupflag_ignore_attach FAIL
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
6a7d6d4b64
[unsafe-to-concat] More annotations for MarkLigaturePos
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
a575992057
[unsafe-to-concat] Mark LigatureSubst
...
Failures down to two:
209/401 harfbuzz:shaping+aots / gpos6 FAIL 0.06s exit status 1
265/401 harfbuzz:shaping+aots / lookupflag_ignore_attach FAIL 0.06s exit status 1
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
b443898cce
[unsafe-to-concat] Adjust MarkBasePos
...
A couple more aots tests down. Four failing:
209/401 harfbuzz:shaping+aots / gpos6 FAIL 0.06s exit status 1
261/401 harfbuzz:shaping+aots / gsub4_1_multiple_ligatures FAIL 0.07s exit status 1
265/401 harfbuzz:shaping+aots / lookupflag_ignore_attach FAIL 0.07s exit status 1
267/401 harfbuzz:shaping+aots / lookupflag_ignore_combination FAIL 0.07s exit status 1
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
95d052a791
[unsafe-to-concat] Adjust GPOS lookbacks
...
Fixes Cursive aots test, fails a couple new aots ones.
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
909e34f68a
[unsafe-to-concat] Adjust Arabic-joining start boundary condition more
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
11bdd7a020
[unsafe-to-concat] Adjust CursivePos
...
Doesn't fix the test yet.
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
ea1b32c8c1
[unsafe-to-concat] Adjust "interior"ness of "from_out_buffer"
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
4f04baef17
[unsafe-to-concat] Further adjust Arabic joining logic at boundary
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
235c3a1295
[unsafe-to-concat] Adjust Arabic joining logic
...
Test failures done one more. Fixed the mongolian-variation-selector
test. Another test case:
$ util/hb-shape NotoSansArabic-Regular.ttf -u 628,200c,628 --show-flags --verify
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
48c5f26199
[unsafe-to-concat] Fix PairPos2 logic
...
Test failures down from 8 to 6:
113/400 harfbuzz:shaping+in-house / mongolian-variation-selector FAIL 0.06s exit status 1
203/400 harfbuzz:shaping+aots / gpos3 FAIL 0.06s exit status 1
204/400 harfbuzz:shaping+aots / gpos4_lookupflag FAIL 0.06s exit status 1
260/400 harfbuzz:shaping+aots / gsub4_1_multiple_ligatures FAIL 0.06s exit status 1
264/400 harfbuzz:shaping+aots / lookupflag_ignore_attach FAIL 0.06s exit status 1
266/400 harfbuzz:shaping+aots / lookupflag_ignore_combination FAIL 0.06s exit status 1
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
c0058892be
[unsafe-to-concat] Mark entire buffer unsafe-to-concat if kerx format2
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
60006d3687
[gsubgpos] Adjust chaining unsafe-to-concat application
...
Fixes three tests.
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
d98a0fc88e
[buffer] Consolidate glyph-flags implementation
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
f91ce56e08
[buffer] Add default cluster value in find_min_cluster
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
56d081955c
[buffer] Rename _unsafe_to_break_set_mask to _infos_set_glyph_flags
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
78481b32c0
[gsubgpos] Combine input/backtrack/lookahead unsafe-to-concat
...
I feel like this is correct logic. Still have to prove.
Errors unchanged at 10.
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
596bc7e939
[unsafe-to-concat] Add to GPOS kerning
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
e1cbd4539f
[unsafe-to-concat] Add annotations to GPOS and kern
...
Failures from 13 to 14.
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
3122c2cdc4
[buffer] Add HB_GLYPH_FLAG_UNSAFE_TO_CONCAT
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1463
2022-01-22 11:53:18 -07:00
Behdad Esfahbod
a8b7f18804
[cff] Initialize accelerator members
2022-01-21 07:38:33 -07:00
Behdad Esfahbod
cce37a6f10
[gpos] Fix conditional
2022-01-21 07:31:21 -07:00
Behdad Esfahbod
773cf4fdd3
[post] Initialize variables
2022-01-21 07:30:09 -07:00
Behdad Esfahbod
84aa1a836c
[PairPos] Split GPOS kerning to both sides ( #3235 )
2022-01-20 14:18:19 -07:00
Behdad Esfahbod
ae9fc7f533
Clean accelerators a bit more
2022-01-20 12:37:21 -07:00
Behdad Esfahbod
0ae6659398
Merge pull request #3392 from harfbuzz/auto-accelerators
...
Auto accelerators
2022-01-20 11:28:59 -08:00
Behdad Esfahbod
ac1bb3e39e
[machinery] Move accelerators to constructor/destructor
2022-01-20 12:10:05 -07:00
Garret Rieger
112cb9fe69
[repacker] Fix missing initilization of obj in vertex_t.
2022-01-20 08:03:52 -08:00
Behdad Esfahbod
e062376ef1
[machinery] Make accelerator lazy-loader call Xinit/Xfini
...
Instead of init/fini. To isolate those functions. To be turned into
constructor/destructors, ideally one per commit (after some SFINAE
foo.)
2022-01-19 17:09:34 -07:00
Behdad Esfahbod
2d12fc90a4
[ms-feature-ranges] Pass reference to cmp function
2022-01-19 14:01:34 -07:00
Behdad Esfahbod
ac109c9353
[ms-feature-ranges] Inline code in header file
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3387
2022-01-19 12:22:02 -08:00
Behdad Esfahbod
376738d411
[coretext] Fix lsearch
2022-01-19 11:58:42 -07:00
Behdad Esfahbod
106388e766
[vector] Merge sorted-vector into vector
...
Was easier than I thought!
Let's see what the bot gods think...
2022-01-19 11:38:37 -07:00
Behdad Esfahbod
294d50ff35
[vector] Add sorted template argument
2022-01-19 11:32:14 -07:00
Behdad Esfahbod
cd9799784c
[vector] Remove old find() method
2022-01-19 11:14:25 -07:00
Behdad Esfahbod
849e40b4db
[ms-feature-ranges] Use preferred vector search API
2022-01-19 11:06:33 -07:00
Behdad Esfahbod
7e160dc347
[gpos] Fix unsafe-to-break of mark-attachment
...
This was undetected because most of the time marks were in same
cluster of their base already.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3093
2022-01-19 09:27:55 -07:00
Behdad Esfahbod
c8195dbc01
Merge pull request #3365 from harfbuzz/gdef-fix
...
GDEF fix
2022-01-19 06:56:05 -08:00
Garret Rieger
94ba4d5a44
[subset] Fix bound check when setting overlap bit.
...
length() shouldn't be used again as the end of instruction offset is already included in flags_offset.
2022-01-18 19:16:37 -08:00
Behdad Esfahbod
fe783ac091
[cff] Remove op_str_t nop init/fini
2022-01-18 13:38:28 -07:00
Behdad Esfahbod
8d24ac2662
[cff] Remove init/fini from number_t
2022-01-18 13:14:42 -07:00
Behdad Esfahbod
6ef83c2c31
[vector] Remove .fini_deep()
2022-01-18 13:08:34 -07:00
Behdad Esfahbod
4eb6e6ea16
[cff] Remove some more fini_deep()
2022-01-18 12:07:05 -07:00
Behdad Esfahbod
29f60d1eaa
[cff] Remove init/fini from blend_arg_t
2022-01-18 11:58:16 -07:00
Behdad Esfahbod
213e3f09b1
[vector] Add TODO Emplace?
2022-01-18 11:53:52 -07:00
Garret Rieger
f1dc8b087c
[subset-cff] Convert subr_closures_t to constructor/destructor instead of init/fini.
2022-01-18 10:29:04 -08:00
Behdad Esfahbod
a48aa9850a
[subset-cff] Remove another set of fini_deep
2022-01-18 09:32:58 -07:00
Behdad Esfahbod
07474aa8c6
[subset-cff1] Remove a constructor/destructor pair
2022-01-18 09:29:43 -07:00
Behdad Esfahbod
a1e9a276eb
[subset-cff2] Drop an constructor/destructor pair
2022-01-18 09:27:32 -07:00
Behdad Esfahbod
035f03346d
[str_buff_vec_t] Remove unused fini method
2022-01-18 09:26:30 -07:00
Behdad Esfahbod
de2cef42b4
[bimap] Remove init/fini
2022-01-18 09:21:31 -07:00
Behdad Esfahbod
c3dd21f110
[cff] Remove unneeded init/fini
2022-01-18 09:11:08 -07:00
Behdad Esfahbod
15cceff3d7
[repacker] Replace fini_deep() with fini()
...
Vector calls destructor now.
2022-01-17 16:46:45 -07:00
Behdad Esfahbod
1198fb2468
[vector] Adjust construction criteria
2022-01-17 16:46:45 -07:00
Behdad Esfahbod
c58bfa35fb
[vector] Move semantics in vector remove()
2022-01-17 16:46:45 -07:00
Behdad Esfahbod
5946e945d5
[vector] Destruct in pop()
2022-01-17 16:46:45 -07:00
Behdad Esfahbod
7171917b52
[vector] Construct items when enlarging
2022-01-17 16:46:45 -07:00
Behdad Esfahbod
813eaba6ea
[vector] Start adding destruction
...
Now we need to remove manual destruction, ouch!
2022-01-17 16:46:45 -07:00
Behdad Esfahbod
65a22836f8
[vector] Add XXX markers for remaining places that need work
2022-01-17 16:46:45 -07:00
Behdad Esfahbod
92f179075f
Make hb_coerce static inline
...
That's the pattern we follow.
985b63b3ee (commitcomment-63973544)
2022-01-16 07:51:35 -07:00
Behdad Esfahbod
19793f333b
Better try at previous commit
...
985b63b3ee (commitcomment-63973544)
2022-01-16 07:49:40 -07:00
Behdad Esfahbod
1173ed1f7f
Try fix Mac build
...
985b63b3ee (commitcomment-63973544)
2022-01-16 07:48:02 -07:00
Behdad Esfahbod
c0f57ccc88
[algs] Add default-construtor to hb_pair_t
2022-01-16 07:01:05 -07:00
luz paz
e2e305066a
Fix various typos
...
Found via `codespell -q 3 -S ./perf/texts -L actualy,ba,beng,fo,gir,inout,nd,ot,pres,ro,te,teh,timne`
2022-01-16 05:39:03 -08:00
Behdad Esfahbod
589bea15b7
Fix previous commit
2022-01-15 17:55:10 -07:00
Behdad Esfahbod
b97e4f7084
Further adjust setlocale
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3375#issuecomment-1013783496
2022-01-15 17:47:51 -07:00
Behdad Esfahbod
63affc4eae
[vector] Move semantics when resizing
2022-01-15 12:24:20 -08:00
Behdad Esfahbod
1c50106608
[meta] Include <memory>, for addressof
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3375
2022-01-15 13:09:06 -07:00
Behdad Esfahbod
71e6f742a8
[meta] Remove unused hb_ref()
2022-01-15 13:09:06 -07:00
Garret Rieger
e30511a8de
[map] Correct previous commit, if (...) was reversed.
2022-01-14 16:48:42 -08:00
Garret Rieger
ff4e8c7eac
[map] Fix bad memory access if hb_map.fini() was called twice.
2022-01-14 16:42:39 -08:00
Behdad Esfahbod
8a69e00639
[meta] Use std::addressof() instead of hb_addressof()
2022-01-13 16:17:34 -07:00
Behdad Esfahbod
b7b0a15f7e
[meta] Remove hb_add_const
2022-01-13 15:33:27 -07:00
Behdad Esfahbod
3b2e604237
[meta] Use std::is_const instead of hb_is_const
2022-01-13 15:32:46 -07:00
Behdad Esfahbod
909dde9df1
[meta] Use std::is_reference instead of hb_is_reference
2022-01-13 15:30:10 -07:00
Behdad Esfahbod
47afb3ef04
[meta] Replace hb_is_pointer with std::is_pointer
2022-01-13 15:27:41 -07:00
Behdad Esfahbod
956e0a4d13
[map] Destruct objects
2022-01-13 15:07:10 -07:00
Behdad Esfahbod
bc0a5fdf43
[test-map] Add disabled tests with std::string
2022-01-13 13:34:22 -07:00
Behdad Esfahbod
985b63b3ee
[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.
2022-01-13 13:33:07 -07:00
Behdad Esfahbod
98b26eedf5
[check-static-inits] Only check library object files
2022-01-13 13:12:10 -07:00
Behdad Esfahbod
1e27f95dc1
[algs] Add hb_coerce()
2022-01-13 13:10:47 -07:00
Behdad Esfahbod
5a91db1135
[map] Remove constexpr invalid items
...
These were non-workable in the general case, eg std::string.
2022-01-13 12:44:48 -07:00
Behdad Esfahbod
114046dc27
[map] Construct objects
2022-01-13 12:38:26 -07:00
Behdad Esfahbod
ca4f56bdc7
[map] Massage some more
...
Towards being able to store arbitrary types.
2022-01-13 12:18:59 -07:00
Behdad Esfahbod
cfe2b66114
[algs] Fix hash chaining to std::hash()
2022-01-13 12:18:59 -07:00
Garret Rieger
87496bf63e
[subset] fix fuzzer timeout if visisted_paint goes into error.
2022-01-13 11:08:24 -08:00
Khaled Hosny
0acf466c44
[doc] Fix hb_font_set_synthetic_slant param name
2022-01-13 01:29:30 +02:00
Behdad Esfahbod
fa12f1ae25
Rename method
2022-01-12 15:08:34 -07:00
Behdad Esfahbod
9408e0d6d1
Rename variable
2022-01-12 15:07:34 -07:00
Behdad Esfahbod
96c969c820
Preserve glyph props
2022-01-12 15:06:40 -07:00
Behdad Esfahbod
0b2c514fb4
More macro cleanup
2022-01-12 11:20:58 -07:00
Behdad Esfahbod
0a42f46ce9
Fix compiler warning
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3364
2022-01-12 11:16:17 -07:00
Matthias Clasen
72f0b24ee3
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>
2022-01-12 11:08:02 -07:00