|
ff419789
|
2022-12-02T16:25:26
|
|
[subset-plan] Sort unicode_to_new_gid_list when needed
|
|
35878df2
|
2022-11-21T19:14:03
|
|
[algs] Implement swap() for pair_t
Helps priority_queue::pop_minimum and friends, which help subsetter
repacker. Shows a few percentage improvement on NotoNastaliq benchmark.
|
|
3ff75411
|
2022-11-21T13:08:55
|
|
[algs] Fix bot fail
|
|
4c14043b
|
2022-11-21T12:56:33
|
|
[algs] Add output argument to hb_unsigned_mul_overflows()
|
|
25adbb38
|
2022-11-21T12:47:53
|
|
[algs] Use __builtin_mul_overflow
Compiles to smaller binary.
|
|
a10cfe3f
|
2022-11-21T12:37:59
|
|
[algs] Write hb_in_ranges() recursively
|
|
70a5cd53
|
2022-11-21T08:52:33
|
|
[algs] Assert trivial copy assignable in stable_sort
|
|
9bb39423
|
2022-11-20T17:40:54
|
|
[algs] Simplify stable_sort signatures
|
|
a9c6a20b
|
2022-11-18T18:29:12
|
|
[map] Support moving value in sink interface
|
|
43a4028f
|
2022-11-18T15:54:34
|
|
[algs] Move hb_vector_size_t to bit-page as only user
|
|
3aad7c2d
|
2022-11-17T15:10:47
|
|
[algs] Remove smart-pointers from hb_hash()
hb_deref() handles them. I think this code predated that.
|
|
c9e84394
|
2022-07-22T09:01:07
|
|
[min/max] Don't forward argument
|
|
0cc2f3c2
|
2022-07-21T16:46:45
|
|
[algs] Remove hb_pair_t()
|
|
90e40f24
|
2022-07-17T15:01:04
|
|
[algs] Tweak attribute(packed) usage
Allow disabling it. Also don't cast this pointer.
|
|
4ee47192
|
2022-07-13T10:36:53
|
|
More -Wcomma fixes
Fixes https://github.com/harfbuzz/harfbuzz/issues/3716
|
|
04c47671
|
2022-06-26T21:44:51
|
|
[lao] Decompose and reorder U+0EB3 around U+0EBB
|
|
215a0afa
|
2022-06-03T01:48:46
|
|
[algs] Remove unused hb_coerce()
|
|
d7785a6d
|
2022-06-02T12:42:24
|
|
[cplusplus] Add unique_ptr
|
|
7ec3aad2
|
2022-06-02T10:50:55
|
|
[shared_ptr] Fix hb_hash() crash on nullptr
|
|
a089d91f
|
2022-06-02T09:55:43
|
|
[hash] Adjust hash for shared_ptr, implement it for std::hash
|
|
e037325e
|
2022-06-02T08:51:12
|
|
[hash] Remove custom hash, rely on std::hash
|
|
0b35940a
|
2022-06-01T15:10:19
|
|
Make hb::shared_ptr hashable
|
|
45a22526
|
2022-05-31T06:23:47
|
|
[flags] Fix undefined-behavior
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ../src/hb-buffer.hh:60:1 in
failure on clusterfuzz-testcase-minimized-hb-subset-get-codepoints-fuzzer-5736539338833920
|
|
b4d1ec31
|
2022-05-19T16:06:21
|
|
[algs] Declare coerce() as constexpr
|
|
15fa8afb
|
2022-05-02T16:46:41
|
|
Add fast-path for big-endian 32-bit byteswap
Speeds up cmap format-12 decoding by some 40% as measured by
the newly added test in perf/benchmark-font!
|
|
8e900f2c
|
2022-02-17T13:28:44
|
|
Revert "hb-algs.hh: Fix build on Visual Studio 2015"
This reverts commit 52c536bb8d90cf0f09e13f5e9e21bf489cc08c23.
See https://github.com/harfbuzz/harfbuzz/pull/3448
|
|
94517850
|
2022-02-13T13:39:26
|
|
[algs] Fix typo in hb_pair_t conversion operator
Fixes https://github.com/harfbuzz/harfbuzz/issues/2083
|
|
52c536bb
|
2022-02-10T16:39:40
|
|
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.
|
|
cd979978
|
2022-01-19T11:14:25
|
|
[vector] Remove old find() method
|
|
92f17907
|
2022-01-16T07:51:35
|
|
Make hb_coerce static inline
That's the pattern we follow.
https://github.com/harfbuzz/harfbuzz/commit/985b63b3eeee5be1f5234fc7f13077eacf5e5b94#commitcomment-63973544
|
|
19793f33
|
2022-01-16T07:49:40
|
|
Better try at previous commit
https://github.com/harfbuzz/harfbuzz/commit/985b63b3eeee5be1f5234fc7f13077eacf5e5b94#commitcomment-63973544
|
|
1173ed1f
|
2022-01-16T07:48:02
|
|
Try fix Mac build
https://github.com/harfbuzz/harfbuzz/commit/985b63b3eeee5be1f5234fc7f13077eacf5e5b94#commitcomment-63973544
|
|
c0f57ccc
|
2022-01-16T06:59:24
|
|
[algs] Add default-construtor to hb_pair_t
|
|
8a69e006
|
2022-01-13T16:17:34
|
|
[meta] Use std::addressof() instead of hb_addressof()
|
|
47afb3ef
|
2022-01-13T15:26:07
|
|
[meta] Replace hb_is_pointer with std::is_pointer
|
|
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.
|
|
1e27f95d
|
2022-01-13T13:10:47
|
|
[algs] Add hb_coerce()
|
|
cfe2b661
|
2022-01-13T11:42:48
|
|
[algs] Fix hash chaining to std::hash()
|
|
53847dba
|
2022-01-10T15:04:47
|
|
[algs] Call std::hash from hb_hash()
|
|
943921cf
|
2021-11-02T00:26:46
|
|
[meta] Use more std type_traits
|
|
6d555ce8
|
2021-11-02T00:18:22
|
|
[meta] Use std::forward instead of hb_forward()
|
|
30c05e8b
|
2021-11-01T23:57:00
|
|
[algs] include <new>
|
|
3604f5f2
|
2021-11-01T22:37:42
|
|
[algs] Include <initializer_list>
|
|
8c055699
|
2021-11-01T17:59:17
|
|
[algs] Add hb_swap() ala, and using, std::swap()
Use it in vector.
Use ADL idiom.
|
|
f09d5ed0
|
2021-08-19T13:06:10
|
|
[algs] Remove hb_bitwise_non()
|
|
b94f24ec
|
2021-08-19T00:48:00
|
|
[bit-set-invertible] Implement set algebra
|
|
6afefe1d
|
2021-08-19T00:27:03
|
|
[algs] Remove unnecessary struct tag names
|
|
bf2c87bf
|
2021-07-27T13:10:41
|
|
Add hb_memcpy() that does len=0 check
|
|
cc16b26e
|
2021-02-22T17:55:47
|
|
[constexpr] IntType
See https://github.com/harfbuzz/harfbuzz/pull/2875
|
|
c55bf551
|
2020-06-29T02:04:16
|
|
Remove HB_CONST_FUNC and HB_PURE_FUNC
They are not necessary for inline functions.
|
|
cba9893a
|
2020-06-29T01:55:57
|
|
m[algs] Move roundf() here
|
|
69464e9d
|
2021-02-20T15:42:44
|
|
[algs] Another try at fixing BEInt constexpr
../src/hb-algs.hh:120:3: error: body of constexpr function ‘constexpr BEInt<Type, 2>::operator Type() const [with Type = short unsigned int]’ not a return-statement
|
|
ff7bf881
|
2021-02-20T15:39:29
|
|
m[algs] Fix BEInt -Wnarrowing errors
|
|
e208f804
|
2021-02-20T15:31:27
|
|
Make constexpr BEInt<Type, 2>::operator Type() C++11-compatible
Multiple return values not permitted until C++14
|
|
47f01c07
|
2020-06-29T01:25:35
|
|
m[algs] Move BEInt here
|
|
e1706ffe
|
2020-06-29T00:59:06
|
|
m [algs] Move flags here
|
|
ed04174a
|
2021-02-05T13:36:46
|
|
Whitespace
|
|
921b4e46
|
2021-01-29T20:35:05
|
|
[algs] Add hb_equal()
Use in hb_array_t::lfind()
|
|
881ad720
|
2021-01-21T14:27:45
|
|
[algs] Remove passthru declaration
Let compiler figure it out.
|
|
7c241651
|
2020-11-30T16:38:53
|
|
[algs] Don't forward rvalue twice
Part of https://github.com/harfbuzz/harfbuzz/issues/2293
|
|
b207eab8
|
2020-04-30T11:53:21
|
|
Round-trip OpenType tags through BCP 47
|
|
818f109b
|
2020-04-16T21:25:32
|
|
Use float in avar calculation instead ints and checking their overflows
|
|
9ffa50fe
|
2020-04-16T21:25:32
|
|
Add an appropriate fallback to hb_int_mul_overflows
|
|
96d792ae
|
2020-03-24T14:05:47
|
|
[avar] Prevent mul overflow
Fixes https://crbug.com/oss-fuzz/21350
|
|
b398748d
|
2020-03-04T11:18:19
|
|
[algs] Add hb_clamp
Similar to stl and glsl's clamp
|
|
fa7edf87
|
2019-12-07T22:01:13
|
|
[bsearch] Massage API some more
|
|
70aa5071
|
2019-12-07T22:35:34
|
|
[algs] Adjust return value of hb_ctz(0) to be 32 instead of 0
|
|
48eef272
|
2019-12-06T05:04:11
|
|
[algs/array] Consolidate the last two bsearch implementations!
Yay! Seems to work.
|
|
ed35dea8
|
2019-12-06T04:37:11
|
|
Fourth try... sighs
|
|
34f5cc2c
|
2019-12-06T04:09:33
|
|
Second try at fixing build
|
|
14ce5ab0
|
2019-12-06T03:54:46
|
|
First try at fixing build errors
|
|
2274270c
|
2019-12-06T03:42:21
|
|
[algs] Streamline bsearch some more
|
|
bd55d4b4
|
2019-12-06T03:35:24
|
|
[algs] Streamline bsearch() API more towards hb_array_t::bsearch_impl()
Preparing to merge the two finally!
|
|
670fec23
|
2019-10-10T09:21:08
|
|
Minor, add a zero length tolerant memset, hb_memset
|
|
65690b5a
|
2019-09-03T23:09:47
|
|
[number] Add whole buffer check and test it
|
|
3661eb61
|
2019-09-03T19:43:14
|
|
Don't check null terminaion of source in hb_codepoint_parse
This isn't what intended originally, just checking if consumed
all the buffer is enough.
|
|
b5e6805e
|
2019-09-03T15:23:40
|
|
[number] Minor tweak on parser related codes
|
|
a77bb7eb
|
2019-09-03T14:49:14
|
|
Move hb_codepoint_parse to hb_parse_uint
|
|
3bc86fb2
|
2019-08-30T16:39:52
|
|
[algs] Fix hb_inc/dec signature
|
|
2d5643ae
|
2019-08-30T09:51:22
|
|
[algs] Add hb_inc() and hb_dec())
|
|
4cb180d2
|
2019-07-02T19:44:18
|
|
Revert "Use constexpr to replace passthru_ bools"
This reverts commit c4aa10ebc8dc28b1f9c90af2ca2092a7535f8395.
Broke several compilers... Sigh. The version without constexpr
didn't fully optimize out the unreachable code on clang.
So, revert it is...
|
|
c4aa10eb
|
2019-07-02T19:15:03
|
|
Use constexpr to replace passthru_ bools
|
|
2e48fd07
|
2019-07-02T17:55:58
|
|
Sprinkle constexpr around
Being conservative. Also not sure it makes any real difference
in our codebase.
|
|
ec8e635e
|
2019-06-24T12:37:23
|
|
[ucd] Use custom encoding to shrink composition data
Saves another 2.5kb.
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
|
|
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.
|
|
24060d3a
|
2019-06-18T12:50:42
|
|
Add hb_bitwise_neg
|
|
7cf91690
|
2019-06-18T12:44:03
|
|
Remove accidentally left cruft
|
|
ff9b9b1c
|
2019-06-10T12:48:25
|
|
Simplify HB_PARTIALIZE impl
+this works on gcc 4.8 as well as default code path.
|
|
451edbd4
|
2019-06-10T12:46:54
|
|
Revert "Test new solution for HB_PARTIALIZE"
This reverts commit a0c4900799c26e4ff34180842a5ff21048fe31a0.
|
|
a0c49007
|
2019-06-10T12:33:23
|
|
Test new solution for HB_PARTIALIZE
Just testing bots. Will finish based on results.
|
|
9407ef8d
|
2019-06-10T15:17:43
|
|
minor, add HB_USE_INTERNAL_QSORT
The only thing I need for a working wasm in a minimum libc,
otherwise I have to provide the very same qsort inside that libc
|
|
c4669fda
|
2019-06-09T11:50:36
|
|
[algs] minor
|
|
eff579f7
|
2019-06-07T12:58:09
|
|
Update and use internal qsort everywhere
|
|
973699c4
|
2019-06-07T12:49:06
|
|
Disable clang gcc impersonator
|
|
e4e518f3
|
2019-06-07T12:41:09
|
|
Fix build on gcc 4.8
Fixes https://github.com/harfbuzz/harfbuzz/issues/1724
|
|
d5e5f378
|
2019-06-05T22:20:03
|
|
This makes minor changes to allow building HarfBuzz with
mingw.org's MinGW.
src/hb-algs.hh: Don't compile _BitScanForward and _BitScanReverse
for GCC >= 4. mingw.org's MinGW doesn't have these functions.
src/hb-atomic.hh: MemoryBarrier does exist in mingw.org's MinGW,
but it is not a macro, it is an inline function. __MINGW32_VERSION
is a macro that exists only in mingw.org's MinGW, so conditioning
on it should not affect MinGW64, where MemoryBarrier is a macro.
src/hb-uniscribe.cc: Define E_NOT_SUFFICIENT_BUFFER if it is not
defined (mingw.org's MinGW doesn't).
src/hb.hh: Don't include intrin.h for mingw.org's MinGW, since that
header is not available; instead, include windows.h. Conditioned
on __MINGW32_VERSION to avoid affecting MinGW64.
|
|
760eb1bf
|
2019-06-03T05:48:04
|
|
Reapply possible bsearch overflow fix
Originally introduced in 21ede86 (#1314) but as it wasn't applied to hb_bsearch
accidentally removed while merging hb_bsearch_r to it.
|
|
8278ff7d
|
2019-06-02T00:36:30
|
|
minor
|
|
33d38e79
|
2019-06-02T00:19:57
|
|
Use a unified bsearch (#1741)
A part of #593
|
|
619f5f1e
|
2019-05-31T22:31:35
|
|
Fourth try at building VS bots
Based on https://github.com/harfbuzz/harfbuzz/issues/1730#issuecomment-497151210
|