Behdad Esfahbod
b6be455020
[vector] Add resize_exact()
2023-01-02 18:05:43 -07:00
Behdad Esfahbod
a516ce97e0
[subset-cff] Add a few exact-allocation calls
2023-01-02 17:58:51 -07:00
Behdad Esfahbod
4a435dc024
[subset-cff] Remove an unlikely
2023-01-02 17:41:31 -07:00
Behdad Esfahbod
f8c578fd93
[subset-cff] Remove commented-out line
2023-01-02 17:33:04 -07:00
Behdad Esfahbod
d5e1748f31
[cff] Simplify add_op()
2023-01-02 12:26:43 -07:00
Behdad Esfahbod
27531d853e
[subset-cff] Move code around
2023-01-02 12:05:11 -07:00
Behdad Esfahbod
9afe5f973e
[vector] Fix leak
...
Discovered by https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=54767
2023-01-02 11:46:45 -07:00
Behdad Esfahbod
4f013c42f0
[subset-cff] Always compact charstrings
...
Reduces non-preprocessed subsetting memory footprint significantly.
2023-01-02 10:39:14 -07:00
Behdad Esfahbod
d3ed6eed43
[cff] Initialize a member variable
...
For good hygiene.
2023-01-02 10:39:14 -07:00
Khaled Hosny
8ccc704c9a
[ci/win32] Disable Cairo tests as well
2023-01-02 18:57:54 +02:00
Khaled Hosny
5d81fc0f1c
[meson] Update Cairo subproject
...
Update to the latest master to get color fonts working. Disable dwrite
on Windows builds as it does not compile and we don’t need it.
2023-01-02 18:57:54 +02:00
Behdad Esfahbod
55a7d81740
[vector] Allocate exact size in operator=
2023-01-01 23:07:42 -07:00
Behdad Esfahbod
449910d431
[vector] Allocate exact size in constructor
2023-01-01 19:27:10 -07:00
Behdad Esfahbod
4dda1f7881
[cff-subset] Compact charstrings just after parsing
...
Massive peak-memory saving when processing face.
2023-01-01 19:00:04 -07:00
Behdad Esfahbod
a7617c3cf1
[cff-subset] Drop hints just after parsing charstring
...
In prep for next commit.
2023-01-01 18:58:08 -07:00
Behdad Esfahbod
b1c4cb0cae
[cff2] Use a shrink instead of resize
...
Such that we can free the allocation.
2023-01-01 18:41:19 -07:00
Behdad Esfahbod
b87360763e
[vector] Support shrinking storage if exact size provided
...
Only do it if requested size is less than quarter of allocated size.
This has massive benefit during CFF subset preprocessing.
2023-01-01 18:38:28 -07:00
Behdad Esfahbod
1119e60296
[subset-cff] Tweak another storage allocation
2023-01-01 18:31:32 -07:00
Behdad Esfahbod
85e8f2b53f
[hb-subset] Initialize preprocess variable
2023-01-01 18:26:08 -07:00
Behdad Esfahbod
f0b5286b36
[features] Sort
2023-01-01 17:04:59 -07:00
Behdad Esfahbod
4a5bd7a926
[subset] Add hb_subset_input_keep_everything()
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3998
New API:
+ hb_subset_input_keep_everything()
2023-01-01 16:53:28 -07:00
Behdad Esfahbod
d87add41b3
[hb-subset] Rename --preprocess-face to --preprocess
...
Keep old name working but hidden.
2023-01-01 16:27:26 -07:00
Behdad Esfahbod
52110f13b0
[subset-input] Refactor copy-pasta code
2023-01-01 16:22:02 -07:00
Matthias Clasen
4adc748b13
Move Color tables to src/OT/Color/
2023-01-01 14:57:53 -07:00
Behdad Esfahbod
a5f1f3a05c
[ft] Conditionalize all COLOR code on >= 2.11.1
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3994
2023-01-01 13:14:04 -07:00
Matthias Clasen
dc5179d465
Drop hb-ot-color-colr-table.cc
...
Move everything into the .hh file.
2023-01-01 20:18:33 +02:00
Khaled Hosny
27684f14be
[introspection] Skip sources not usable with GObject Introspection
...
There is no point in generating GIR for code interfacing with libraries
without introspection integration. This fixes spurious warnings on macOS
when g-ir-scanner mistakenly tries to scan system headers.
2023-01-01 20:08:19 +02:00
Matthias Clasen
2bd09a99c1
Merge pull request #3996 from harfbuzz/drop-unused-file
...
Drop an unused file
2023-01-01 10:30:40 -05:00
Matthias Clasen
f60e7e3f8c
Drop an unused file
2023-01-01 09:51:03 -05:00
Behdad Esfahbod
3ff91c449f
[paint] Optimize transform operations again
2022-12-31 14:49:41 -07:00
Behdad Esfahbod
1a0dd49f1e
Merge pull request #3991 from harfbuzz/paint-optimize-transform
...
Paint optimize transform
2022-12-31 14:38:06 -07:00
Matthias Clasen
9f3b59fe6b
Update expected test results
...
These need updates, because they record
every callback, and we've changed what
callbacks are happening.
2022-12-31 16:19:20 -05:00
Behdad Esfahbod
edb812345a
[subset-cff] Another exact allocation
2022-12-31 13:55:41 -07:00
Behdad Esfahbod
54dd01b865
[set] Use exact-allocation in copying
...
Significantly reduces memory consumption.
2022-12-31 13:33:40 -07:00
Behdad Esfahbod
2c64048bc4
[subset] Another exact-allocation
2022-12-31 13:26:00 -07:00
Behdad Esfahbod
0ec0214f10
[cff-subset] Adjust pre-allocation
...
Reduces memory use significantly.
2022-12-31 13:19:38 -07:00
Behdad Esfahbod
b88ca81814
[paint-extents] Minor reorder
2022-12-31 12:53:00 -07:00
Behdad Esfahbod
0c6a721337
[set] Another exact-size allocation
2022-12-31 12:42:29 -07:00
Behdad Esfahbod
b803024caf
[cff2] Another exact-size allocation
2022-12-31 12:40:07 -07:00
Behdad Esfahbod
3d4659beaa
[cff2] Use exact-size vector allocation for blends
2022-12-31 12:38:58 -07:00
Behdad Esfahbod
92e5933ee6
[vector] A couple more exact-size allocations
2022-12-31 12:35:30 -07:00
Behdad Esfahbod
2eacc37e08
[vector] Add internal API for exact-size allocation
...
Use it from a couple of places.
2022-12-31 12:30:31 -07:00
Behdad Esfahbod
a0b46f3f6b
[machinery] Refactor shared code into a macro
2022-12-31 12:15:14 -07:00
Behdad Esfahbod
ebb475bae7
[multimap] Add consts
2022-12-31 12:11:14 -07:00
Behdad Esfahbod
9e3ff0e9f0
[paint] Fixup
2022-12-31 11:55:45 -07:00
Behdad Esfahbod
6b47fcb17a
[paint] Add internal push_skew/pop_skew API
2022-12-31 11:40:12 -07:00
Behdad Esfahbod
46adf31b4c
[paint] Add internal push_rotate/pop_rotate API
2022-12-31 11:35:39 -07:00
Behdad Esfahbod
ce7835124a
[paint] Add internal push_scale/pop_scale API
2022-12-31 11:32:15 -07:00
Behdad Esfahbod
7363eb373a
[paint] Add internal push_translate/pop_translate
2022-12-31 11:24:42 -07:00
Behdad Esfahbod
df91677997
[paint] Call internal API internally
2022-12-31 11:12:02 -07:00