|
1c249be9
|
2024-12-02T15:51:19
|
|
Sidestep nontrivial-memaccess warning in Crap()
With -Wnontrivial-memaccess, recent versions of clang flag the usage of
memcpy in hb-null.hh with pointers to nontrivially-copyable types.
Sidestep this warning by casting the problematic pointer to void*.
|
|
56e8a290
|
2023-08-22T15:49:00
|
|
Fix static_size declaration
I have a vague memory that it was intentionally written
that way, but I can't recall :-(.
|
|
60db1427
|
2023-07-24T20:49:32
|
|
[layout] Remove unused "max-size" cruft
|
|
c91899be
|
2023-07-21T11:43:47
|
|
[gdef] Use set-digest for mark-filterint-sets
Speeds up Noto Duployan-Regular.otf by 45% percent!
|
|
2006d321
|
2023-07-07T17:07:11
|
|
[sanitize] Add "fastpath" for ArrayOfOffset16To<> objects with max size
Unfortunately this doesn't speed up NotoNastaliq or Gulzar as I was
hoping for. Their GSUB tables are not large enough for this to kick
in...
|
|
7a85663c
|
2023-07-07T19:21:18
|
|
Revert "[sanitize] Add "fastpath" for ArrayOfOffset16To<> objects with max size"
This reverts commit 10f8556c73f3cf231c6b5a900a6a1903f9516f90.
This was, unfortunately, wrong :(.
|
|
10f8556c
|
2023-07-07T17:07:11
|
|
[sanitize] Add "fastpath" for ArrayOfOffset16To<> objects with max size
|
|
68b78914
|
2023-07-07T17:07:11
|
|
[sanitize] Add "fastpath" for ArrayOfOffset16To<> objects with max size
Unfortunately this doesn't speed up NotoNastaliq or Gulzar as I was
hoping for. Their GSUB tables are not large enough for this to kick
in...
|
|
347b9448
|
2023-06-26T18:09:40
|
|
[null] Fix getting Crap(hb_bytes_t)
Fixes https://oss-fuzz.com/testcase-detail/6187272924692480
|
|
8a8fc37c
|
2023-05-03T14:57:00
|
|
[GDEF] Use a cache for glyph classes
Shows 5% speedup for Roboto shaping.
|
|
e1d2facd
|
2022-07-15T16:02:58
|
|
[null] Add hb_has_null_size() and hb_has_min_size()
|
|
1e503f58
|
2022-07-05T15:44:58
|
|
[null] Add DECLARE_NULL_NAMESPACE_BYTES_TEMPLATE1
|
|
1db6fddb
|
2022-06-18T14:34:46
|
|
[arabic-fallback.hh] Hook up 3-letter ligatures
|
|
8df9aba9
|
2022-05-26T03:59:21
|
|
Actually try to fix null-size undefined behavior
Related to:
https://github.com/harfbuzz/harfbuzz/pull/2067
https://bugzilla.mozilla.org/show_bug.cgi?id=1577584
|
|
23a28f5a
|
2021-04-16T13:22:05
|
|
Avoid undefined-behavior
If a struct had (because it's a union) sizeof that is larger than the null_size,
we were providing only null_size bytes for its Null object. We know we'd never
access beyond that, but is undefined-behavior nonetheless according to the
standard.
The alternative fix would have required use of flexible-arrays, which are not
standard and have their own issues in various compiler. We've discussed that
extensively in the follow Mozilla issue (currently locked; I've asked that it
be opened):
https://bugzilla.mozilla.org/show_bug.cgi?id=1577584
Part of
https://github.com/harfbuzz/harfbuzz/pull/2067
|
|
499248c5
|
2021-04-16T13:14:48
|
|
[blob] Use min_size, instead of null_size in .as<T>()
Part of https://github.com/harfbuzz/harfbuzz/pull/2067
|
|
53806e5b
|
2020-11-25T11:51:37
|
|
Tiny improvement on previous commit
Functionally the same.
|
|
bd8aa1b0
|
2020-04-21T22:19:46
|
|
Minor
|
|
2dda6dd7
|
2020-04-20T14:12:45
|
|
minor, tweak spacing
turn 8 spaces to tab, add space before Null/Crap
|
|
3aceee25
|
2019-09-06T12:17:18
|
|
Revert "[null] Silence undefined-behavior complaints with too-small null bytes"
This reverts commit 911c76abcdfe89770b252eb0d4eb621c0db00ad5.
Broke tests. I'm not sure I understand why. At any rate, this was a
bad way to fix. I'll look into understanding as well as better fix.
|
|
911c76ab
|
2019-09-06T11:53:11
|
|
[null] Silence undefined-behavior complaints with too-small null bytes
Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1577584
|
|
60653a7a
|
2019-06-18T13:01:11
|
|
Remove HB_VECTOR_SIZE
It was cumbersome to get it to work reliably, for dubious performance
gain, mostly in the subsetter maybe...
Life is easier without. It was disabled forever anyway.
|
|
c0485e32
|
2019-05-10T21:03:14
|
|
Use hb_void_t<> the way it's supposed to be used
|
|
5a171ed3
|
2019-05-10T20:11:29
|
|
[null] Modernize template work
|
|
61d150c9
|
2019-05-10T20:06:31
|
|
[meta] Add integral_constant, true_t -> true_type, false_t -> false_type
|
|
38e3a8bd
|
2019-05-10T20:03:14
|
|
[meta] bool_tt -> bool_constant
|
|
92588782
|
2019-04-30T13:05:10
|
|
Remove space between right angle brackets now that we have C++11 (#1689)
|
|
54ece299
|
2019-04-16T16:45:53
|
|
Use type aliasing for meta-functions, ie. those returning a type
|
|
155e92f2
|
2019-04-16T11:35:09
|
|
Reduce NullPool size
|
|
d75b73a3
|
2019-03-30T00:06:54
|
|
fix rebase errors
|
|
cc94a9ed
|
2019-03-29T18:41:38
|
|
Merge branch 'var-subset' of https://github.com/harfbuzz/harfbuzz into var-subset
rebase master
|
|
4c38a9f6
|
2019-03-29T20:23:07
|
|
Remove hb_assign()
Not needed anymore. We just use operator= now.
|
|
b986c6a3
|
2019-03-29T20:17:46
|
|
[C++11] Remove IntType::set() in favor of operator=
|
|
ea281aa8
|
2019-03-26T16:18:03
|
|
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
|
|
a030ce4f
|
2019-03-28T21:26:50
|
|
Merge branch 'master' into iter
|
|
ec2a5dc8
|
2019-03-26T16:18:03
|
|
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
|
|
d552b681
|
2018-12-30T18:54:07
|
|
[meta] Move typename around
We'll see if bots like.
|
|
8570da1d
|
2018-12-28T14:40:30
|
|
[meta] Minor
|
|
8c6cbbdf
|
2018-12-28T14:29:09
|
|
[iter/meta] Add hb_is_iterable
|
|
d25a2f14
|
2018-12-23T20:19:52
|
|
Fix a few warnings
|
|
5b70074e
|
2018-12-20T15:38:59
|
|
Add hb_assign(obj, value)
|
|
e4120085
|
2018-12-17T21:31:01
|
|
Remove redundant void from C++ sources (#1486)
|
|
b2ebaa9a
|
2018-12-16T22:38:10
|
|
Remove redundant 'inline' from methods (#1483)
|
|
9ae954f4
|
2018-11-30T15:00:52
|
|
Merge branch 'master' into cff-subset
|
|
282ce723
|
2018-11-29T12:18:14
|
|
Fix "typename outside template" issues
Nothing an extra template class wouldn't fix...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1419
|
|
32d291ae
|
2018-11-28T16:27:45
|
|
Merge branch 'master' into cff-subset
|
|
39b9d63b
|
2018-11-24T00:25:40
|
|
Add hb_static_size(T)
|
|
f99abcc3
|
2018-11-24T00:22:21
|
|
Add template-function convenience macros
|
|
e8669105
|
2018-11-22T18:07:59
|
|
Enforce requiring null_size even if min_size is 0
This concludes null-size enforcement changes
|
|
eeed802b
|
2018-11-22T01:53:36
|
|
Fix spurious gcc warnings
../../src/hb-null.hh:53:39: warning: enum constant in boolean context [-Wint-in-bool-context]
|
|
2737aa81
|
2018-11-22T01:44:27
|
|
Fix up recent change
Fixes https://github.com/harfbuzz/harfbuzz/issues/1300
|
|
f2b91d65
|
2018-11-22T01:10:22
|
|
Use Type::null_size for our structs in Null(), sizeof() for other types
|
|
8d778877
|
2018-11-21T23:46:09
|
|
..
|
|
55c66c7c
|
2018-11-11T16:09:38
|
|
Revert "Declare Null() constexpr"
This reverts commit 442a72d95ab1fb3a47b486d8d1eb68e909d0ffb8.
Doesn't make sense. No idea how my local compilers where happy with it!
|
|
442a72d9
|
2018-11-11T15:51:23
|
|
Declare Null() constexpr
|
|
43ee0e4d
|
2018-11-06T09:57:17
|
|
Merge branch 'master' into cff-subset
|
|
0da22fb0
|
2018-11-05T13:13:39
|
|
[null] Tweak hb_nonnull_ptr_t some more
|
|
1682d1bb
|
2018-11-04T13:25:41
|
|
Merge branch 'master' into cff-subset
|
|
d6fdae31
|
2018-11-03T16:02:03
|
|
Add operator char * to hb_nonnull_ptr_t
|
|
7430ff60
|
2018-11-03T15:59:13
|
|
Template casts in hb_nonnull_ptr_t
|
|
fb0f30f5
|
2018-11-03T15:24:14
|
|
Add hb_nonnull_ptr_t
Towards fixing https://github.com/harfbuzz/harfbuzz/issues/1146
|
|
e600e544
|
2018-11-01T16:13:56
|
|
Merge branch 'master' into cff-subset
|
|
de96e5c8
|
2018-11-01T18:13:58
|
|
[Crap] Avoid operator=
|
|
e1241636
|
2018-10-23T11:25:51
|
|
Merge branch 'master' into cff-subset
|
|
07386ea4
|
2018-10-22T21:18:27
|
|
Remove const and references when binding Null()
Fixes https://github.com/harfbuzz/harfbuzz/issues/1299
Removes anomaly I was seeing in cpal table trying to use implicit Null(NameID).
|
|
857c5827
|
2018-10-22T09:57:20
|
|
Merge branch 'master' into cff-subset
|
|
257d0e5a
|
2018-10-19T22:49:21
|
|
Fix typos.
|
|
b3390990
|
2018-10-10T12:07:49
|
|
Add per-subtable set-digests
This speeds up Roboto shaping by ~10%. I was hoping for more.
Still, good defense against lookups with many subtables.
|
|
78c09bf2
|
2018-10-10T11:50:46
|
|
Move subtable array into lookup accel
|
|
d050ab8d
|
2018-09-17T13:07:29
|
|
Merge branch 'master' into cff-subset
|
|
c0c85b85
|
2018-09-17T11:14:56
|
|
implemented get_glyph_extents with CFF1
Implemented path operators in a new struct PathProc hooked up to CSOpSet
Added current point to CSInterpEnv
|
|
606bf574
|
2018-09-16T19:33:48
|
|
Revert forcing use of single-parameter static_assert()
Some clang versions define static_assert as a macro apparently, so we cannot
redefine it...
This reverts commit 94bfea0ce6a7b4d5641c198d50751748a353df11.
This reverts commit 4e62627831e7457ed60ff87712570065b14b200a.
|
|
4e626278
|
2018-09-16T18:09:36
|
|
Enforce single-param static_assert() only
So we don't accidentally break it again.
|
|
f1a86e1e
|
2018-09-16T18:01:32
|
|
Remove unused try
|
|
22b88632
|
2018-09-06T22:27:44
|
|
Merge branch 'master' into cff-subset
|
|
0d160d5f
|
2018-09-03T20:50:11
|
|
[subset] Implement subsetting of SingleSubst
|
|
8af9690a
|
2018-08-29T13:26:17
|
|
Merge branch 'master' into cff-subset
Renamed cff "private" source/headers without the suffix
|
|
c77ae408
|
2018-08-25T22:36:36
|
|
Rename hb-*private.hh to hb-*.hh
Sorry for the noise, downstream custom builders. Please adjust.
|
|
161ece4c
|
2018-08-06T11:23:50
|
|
Merge branch 'master' into cff-subset
|
|
3506672c
|
2018-08-06T06:17:48
|
|
Port _nil objects to Null() machinery
Finally, unified!
|
|
f9cfa5cb
|
2018-08-06T05:29:15
|
|
Change null-pool specialization to min_size again
|
|
25147ff8
|
2018-08-06T05:01:52
|
|
Move Null system to hb-null.hh
|