|
ff92de76
|
2018-05-29T18:48:45
|
|
Remove HB_DISALLOW_COPY_AND_ASSIGN
llvm-gcc-4.2 bot had this problem:
hb-private.hh:812: error: initializer specified for non-virtual method 'void hb_vector_t<Type, StaticSize>::operator=(const hb_vector_t<Type, StaticSize>&) [with Type = hb_user_data_array_t::hb_user_data_item_t, unsigned int StaticSize = 1u]'
Removing the delete didn't work with a constructor. So, remove constructor.
Just disallow assignment. Still better than nothing.
|
|
efbab6ba
|
2018-05-29T18:21:55
|
|
Disable use of thread_local
Clang build was failing with:
/usr/bin/ld: .libs/libharfbuzz_la-hb-blob.o: relocation R_X86_64_PC32 against undefined hidden symbol `_ZTH12_hb_CrapPool' can not be used when making a shared object
Instead of fighting it, just disable use of it.
|
|
6c222764
|
2018-05-25T16:21:27
|
|
Add HB_DISALLOW_COPY_AND_ASSIGN
|
|
7f7b1370
|
2018-05-24T14:09:04
|
|
Fix Uniscribe build
If a pointer type was passed to Null(), reinterpret_cast<> was
complaining about qualifiers being removed. Turns out I need the const on
the other side of "Type" to fix that. Also remove unused const from
NullPool type.
|
|
31c4236d
|
2018-05-24T13:38:46
|
|
Underflow protection in hb_vector_t
|
|
f83e992c
|
2018-05-24T11:46:57
|
|
Mark CrapPool thread_local
Not sure if I like to keep it. For now, aim for correctness.
|
|
5d801298
|
2018-05-24T11:33:15
|
|
Add CrapPool
Common Regoin for Access Protection. Like the NullPool, but writable.
|
|
673b764d
|
2018-05-23T20:12:23
|
|
Move code around
|
|
65aeabd6
|
2018-05-23T16:15:28
|
|
Add hb_vector_t::push(const Type &v)
Makes for cleaner code.
|
|
6c818c55
|
2018-05-22T22:00:05
|
|
Actually enable vectorized operations
Fixup for previous commit. Was accidentally turned off.
|
|
f56a250b
|
2018-05-22T21:36:07
|
|
Another try at smart vectorization
Make clang happy. Also, don't use anonymous union.
|
|
b995b501
|
2018-05-22T21:06:22
|
|
Try enabling vectorization smartly
We'll see if this sticks to the bots.
|
|
191c4edc
|
2018-05-09T15:27:17
|
|
Reinstante DEFINE_NULL_DATA
Seems like I messed up; buffer overrun got reported.
|
|
63f57f4d
|
2018-05-08T16:56:11
|
|
Mark more unsized array's as arrayZ
|
|
abc12f7b
|
2018-05-08T02:23:36
|
|
Move null pool to hb-private
|
|
08e280fd
|
2018-05-08T01:57:27
|
|
Rename hb_string_t to hb_bytes_t
|
|
bd021a67
|
2018-05-08T01:50:30
|
|
Minor
|
|
5c3112ae
|
2018-05-01T19:07:04
|
|
s/hb_prealloced_array_t/hb_vector_t/g
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
|
|
4a01eb12
|
2018-05-01T19:05:58
|
|
Add hb_auto_t
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
|
|
a60ba796
|
2018-05-01T19:01:25
|
|
s/finish/fini
For consistency.
|
|
8f4c1230
|
2018-04-13T23:01:54
|
|
Reinstate support for Visual Studio 2005
|
|
632713ba
|
2018-04-12T14:17:03
|
|
Always enable atexit on Android (#971)
Obviously one can use a newer NDK for building an updated HarfBuzz
instead that now pretty old version however I am concerned if that
version checking is working with clang that is used with the newer
NDK versions.
|
|
f24b0b97
|
2018-04-12T13:40:45
|
|
Update the links and revive the dead ones
|
|
c14b24fc
|
2018-03-26T10:44:54
|
|
Add HB_NO_ATEXIT
|
|
ebccd019
|
2018-03-24T17:51:55
|
|
More ULL fixes
Fixes https://github.com/harfbuzz/harfbuzz/issues/901
|
|
7ec3ba21
|
2018-03-24T14:12:12
|
|
Define uint64_t constants with ULL suffix
Fixes https://github.com/harfbuzz/harfbuzz/issues/901
|
|
19256bef
|
2018-03-12T13:33:03
|
|
hb-private.hh: Add fallback implementation for round()
For pre-C99 compilers that do not support round(), we need to have a
simplistic implementation for it, when it is not detected during build
configuration, either via CMake or autotools, by using floor() and
ceil(), which are provided in the pre-C99 compilers.
Please see discussion at commit 86a0ac2 for more details for re-adding
this patch.
|
|
86a0ac28
|
2018-03-14T15:51:33
|
|
Revert "hb-private.hh: Add fallback implementation for round()"
This reverts commit b9dcbb1f8312d8606b230f75594d40b7d4087004.
This is gross. Should be only done if a specific macro is defined. Not the other way
around. This fails my build as autotools companions where not added anyway.
|
|
b9dcbb1f
|
2018-03-12T13:33:03
|
|
hb-private.hh: Add fallback implementation for round()
Add a simplistic round() implementation for our purposes, used when the
compiler does not support round() directly.
|
|
97a71102
|
2018-02-18T10:50:24
|
|
Fix BitScanForward() usage
Should fix Win64 bot.
|
|
cd11107b
|
2018-02-16T18:28:58
|
|
Another bitops fallback fix
I'm confident that all bugs are hashed out now.
|
|
4e517ecb
|
2018-02-16T18:20:12
|
|
Another bitops fallback impl fix
|
|
6a91a2eb
|
2018-02-16T17:49:41
|
|
Fix wide bitops implemenetation
|
|
6d5c0bf8
|
2018-02-16T17:33:26
|
|
Fix bitops fallback impl
|
|
82eb1dac
|
2018-02-16T16:52:09
|
|
Flesh out other bit ops some more for 128bit as well
|
|
864a2ddd
|
2018-02-16T14:21:40
|
|
Clean up bit functions
Compile all code-paths possible, to better catch errors.
Also enable MSVC ones on mingw which seems to support them.
|
|
978ace6f
|
2018-02-16T16:06:17
|
|
Improve _hb_popcount()
Support 128bit type.
|
|
d37310ac
|
2018-02-16T21:45:08
|
|
Remove checking macros __OPTIMIZE__ for MSVC
Visual C++ compiler doesn't define macros __OPTIMIZE__ when optimizations enabled
|
|
139c9928
|
2018-02-16T13:27:26
|
|
Fix hb-private.hh compile issue
|
|
6c10328e
|
2018-02-15T23:17:46
|
|
Use _BitScanForward and _BitScanReverse on MSVC
|
|
90d1c740
|
2018-02-11T19:08:59
|
|
Add MSVC to no-visibility list
|
|
0db6c6f2
|
2018-02-11T18:28:10
|
|
Add Sun compiler to no-visibility as well
Fixes https://github.com/harfbuzz/harfbuzz/pull/776
|
|
cd32177a
|
2018-02-11T19:34:05
|
|
Try at fixing multiple-definition of NullPool
If we don't have visibility, make NullPool static.
|
|
af274507
|
2018-02-10T13:25:49
|
|
Minor
|
|
570d5237
|
2018-02-10T13:24:22
|
|
[subset] Merge remote-tracking branch 'googlefonts/master'
|
|
4816064c
|
2018-02-09T17:14:37
|
|
add missing return
|
|
8cef3a61
|
2018-02-09T16:04:23
|
|
Try fixing build with Sun Studio
Trying to fix:
https://circleci.com/gh/harfbuzz/harfbuzz/6635
Also part of:
https://github.com/harfbuzz/harfbuzz/issues/630
|
|
59c658c8
|
2018-02-08T19:22:47
|
|
capture codepoints sorted so we can use them for cmap later. one day we will have a map
|
|
931f8b7e
|
2018-02-07T21:42:03
|
|
Fix another thinko
|
|
c479a599
|
2018-02-07T21:13:10
|
|
[subset] Assemble font
|
|
b87cbe2b
|
2018-02-07T14:11:26
|
|
Try fixing build for platforms that have no visibility attributes
|
|
6804b61d
|
2018-02-07T13:47:35
|
|
[subset] Add hb_subset_face
It's a hb_face_t that has add_table() and in the future knows how to
compile itself into a font blob.
|
|
f41b9213
|
2018-02-05T19:51:09
|
|
Fix fallthrough compiler warning with gcc >= 7
Fixes https://github.com/harfbuzz/harfbuzz/issues/755
|
|
e8859fca
|
2018-02-04T01:26:57
|
|
Enable use of atexit() on macOS and related platforms.
The atexit() man page indicates that this is expected to behave
in the expected way on unloading of shared libraries.
|
|
ca42d961
|
2018-01-11T09:15:34
|
|
[aat] Implement RearrangementSubtable
|
|
5dbbd0fd
|
2018-01-11T12:33:22
|
|
Move the #define of _GNU_SOURCE to the top of hb-private.hh (#697)
This fixes the build on Cygwin.
|
|
7cdd6ab0
|
2018-01-10T04:33:08
|
|
Round, instead of floor, when applying variations
Hoping this would fix remaining text-rendering-tests failures,
but so far no luck.
|
|
be59f3cb
|
2017-12-05T09:01:28
|
|
Silence unused-variables warning on MSVC
Fixes https://github.com/harfbuzz/harfbuzz/issues/635
|
|
7c6937e7
|
2017-11-20T14:49:22
|
|
Move all references of old url to the new address (#622)
|
|
40ec3bbb
|
2017-11-03T16:57:30
|
|
Consolidate debug stuff into hb-debug.hh
Part of fixing https://github.com/behdad/harfbuzz/pull/605
|
|
384862d7
|
2017-11-03T16:31:47
|
|
Remove NO_COPY()
|
|
8eaff980
|
2017-10-31T15:30:06
|
|
Remove HB_TAG_CHAR4
|
|
c290ba5b
|
2017-10-31T13:18:21
|
|
Define _GNU_SOURCE
Might help with https://github.com/behdad/harfbuzz/pull/592
Ie. bringing in qsort_r() prototype always.
|
|
e35a763c
|
2017-10-30T13:15:05
|
|
[post] Implement glyph_from_name()
This concludes https://github.com/behdad/harfbuzz/pull/568
|
|
e1a37f3d
|
2017-10-30T11:42:28
|
|
Add hb_string_t
|
|
0712e915
|
2017-10-29T17:01:47
|
|
Remove hb_compare_func_t
|
|
51f4d4d5
|
2017-10-27T15:09:22
|
|
Reduce prealloced number of user-data items from 2 to 1
Even 1 is too many but putting 0 breaks compile. Saves 3k in .so
|
|
62e312ea
|
2017-10-27T09:29:20
|
|
Use NULL instead of polyfill, if nullptr is not available
Part of fixing https://github.com/behdad/harfbuzz/issues/585
|
|
2a749680
|
2017-10-26T19:48:33
|
|
Add hb-string-array.hh
Used to build static string arrays that use no relocation.
|
|
6f08b12b
|
2017-10-26T18:23:03
|
|
Minor
|
|
2ee710e0
|
2017-10-23T08:37:48
|
|
Minor
|
|
ced86da7
|
2017-10-22T17:03:36
|
|
Another try at fixing mingw32 build bot fail
|
|
3ee15a60
|
2017-10-22T17:03:36
|
|
Another try at fixing mingw32 build bot fail
|
|
d8adaa97
|
2017-10-20T13:57:43
|
|
Another try at fixing build bots
hb-ot-shape.cc:287:18: error: comparison of constant 32 with expression of type 'hb_unicode_general_category_t' is always true [-Werror,-Wtautological-constant-out-of-range-compare]
|
|
6058f988
|
2017-10-19T11:39:52
|
|
Remove FLAG_SAFE()
No flag is safe, over time... See previous commit.
|
|
221ce6c1
|
2017-10-15T17:58:58
|
|
Fix bots
|
|
56ef4e0c
|
2017-10-15T16:38:29
|
|
Simplify hb_prealloced_array_t initialization
|
|
7737e87a
|
2017-10-15T16:21:03
|
|
Properly detect vector_size attribute and use fallback otherwise
|
|
deed4a48
|
2017-10-15T16:53:09
|
|
Faster hb_set_t
Fixes https://github.com/behdad/harfbuzz/pull/23
|
|
5e74044b
|
2017-10-15T16:15:06
|
|
Add bfind() to prealloaced_array_t
|
|
db5f7ef1
|
2017-10-15T16:00:22
|
|
Inline another bsearch()
|
|
6fb4ac73
|
2017-10-15T16:00:09
|
|
Add popcount for 64bit ints
|
|
3c13e153
|
2017-10-15T14:02:58
|
|
Try fixing AppVeyor bots
|
|
dbdbfe3d
|
2017-10-15T12:11:08
|
|
Use nullptr instead of NULL
|
|
c3448e8d
|
2017-10-15T12:02:00
|
|
Use static_assert instead of custom ASSERT_STATIC
|
|
76dcbf8b
|
2017-10-15T11:24:35
|
|
Add polyfill for static_assert and nullptr
Also fix hb_assert_constant_t.
|
|
76c4873e
|
2017-06-02T21:53:10
|
|
Support branch prediction helpers on clang compiles (#491)
|
|
92e2c4ba
|
2017-05-29T12:53:30
|
|
Avoid using strdup inside library. (#488)
If an application provides a malloc replacement through
hb_malloc_impl() it is important that it is used to allocate
everything, but the use of strdup() circumvents this and
causes system malloc() to be called instead. This pairs
badly with the custom hb_free_impl() being called later.
|
|
df98ce5f
|
2016-12-21T19:27:30
|
|
Improve debug output with really deep nesting
|
|
0b8f3ab0
|
2016-07-11T21:57:26
|
|
clang in MSVC mode doesn't like when we redefine __attribute__ (#283)
|
|
5069062d
|
2016-04-26T12:02:26
|
|
Unbreak build on Windows CE
0475ef2f97e3035a2eea9a0f96031331e07e8e29 broke the build by using
vsnprintf(), which is not defined on Windows CE
|
|
91dd1156
|
2016-02-25T13:56:47
|
|
Add HB_NDEBUG
API changes:
- If NDEBUG is defined, define HB_NDEBUG
- Disable costlier sanity checks if HB_NDEBUG is defined.
In 1.2.3 introduced some code to disable costly sanity checks if
NDEBUG is defined. NDEBUG, however, disables all assert()s as
well. With HB_NDEBUG, one can disable costlier checks but keep
assert()s.
I'll probably add a way to define HB_NDEBUG automatically in
release tarballs. But for now, production systems that do NOT
define NDEBUG, are encouraged to define HB_NDEBUG for our build.
|
|
a13b023d
|
2015-12-11T10:21:27
|
|
AIX fixes
- use '-w' instead of '\<...\>' for check-header-guards
grep manpage says these are the same
- put '-q' first in the grep options
- move VAR into hb-private.hh
- hb-font-private.hh - use [VAR] instead of [] for variable array
|
|
766963ad
|
2015-11-24T15:38:43
|
|
Merge pull request #114 from ThePhD/vc++-fixes
Fix all VC++ warnings and errors
|
|
1dc32ea4
|
2015-11-20T13:24:19
|
|
Whitespace
|
|
f94c0ecb
|
2015-11-20T13:21:29
|
|
Define HB_MARK_AS_FLAG_T as a macro instead of using templates
The generic template operator overloading was causing more problems than it
solved. Eg:
https://github.com/behdad/harfbuzz/pull/163
https://github.com/behdad/harfbuzz/issues/175
So, just use macros.
Fixes https://github.com/behdad/harfbuzz/issues/175
Fixes https://github.com/behdad/harfbuzz/pull/178
|
|
e0082ae6
|
2015-11-17T18:42:13
|
|
Move things around
|
|
167c3271
|
2015-11-09T17:17:56
|
|
Fix build on MSVC >= 2012
Use the DEFINE_ENUM_FLAG_OPERATORS macro in winnt.h on Visual Studio,
which defines the bitwise operators for the enumerations that we want to
mark as hb_mark_as_flags_t, which will take care of the situation on newer
Visual Studio (>= 2012), where the build breaks with C2057 errors as the
underlying types of the enumerations is not clear to the compiler when we
do a bitwise op within the declaration of the enumerations themselves.
Also disable the C4200 (nonstandard extension used : zero-sized array in
struct/union) and C4800 ('type' : forcing value to bool 'true' or 'false'
(performance warning)) warnings as the C4200 is the intended scenario and
C4800 is harmless but is so far an unavoidable side effect of using
DEFINE_ENUM_FLAG_OPERATORS.
|
|
6986208b
|
2015-11-04T18:46:22
|
|
Optimize runs without Default_Ignorable's
Now that we have a buffer-wide scratch flags facility, use it to
optimize away a few passes.
|
|
aa7044de
|
2015-11-04T16:25:57
|
|
Generalize flags types
|