Behdad Esfahbod [Wed, 8 May 2019 19:45:02 +0000 (12:45 -0700)]
[name] Sanitize records for reals
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14641
Behdad Esfahbod [Wed, 8 May 2019 19:25:34 +0000 (12:25 -0700)]
[iter] Rename hb_iter_t() to hb_iter_type<> and add hb_item_type<>
Behdad Esfahbod [Wed, 8 May 2019 19:11:52 +0000 (12:11 -0700)]
[map] Make .has() optionally return value
Behdad Esfahbod [Wed, 8 May 2019 19:01:55 +0000 (12:01 -0700)]
Make compiler happy with -Og
Behdad Esfahbod [Wed, 8 May 2019 18:00:18 +0000 (11:00 -0700)]
[iter] Accept pointer in hb_iter() and hb_iter_t()
Behdad Esfahbod [Wed, 8 May 2019 17:56:09 +0000 (10:56 -0700)]
[iter] Accept pointer in hb_map()
Behdad Esfahbod [Wed, 8 May 2019 17:40:39 +0000 (10:40 -0700)]
[serialize] LangSys subset->copy
Behdad Esfahbod [Wed, 8 May 2019 17:35:02 +0000 (10:35 -0700)]
Add hb_iota()
Behdad Esfahbod [Wed, 8 May 2019 17:02:30 +0000 (10:02 -0700)]
[iter] Actually fix previous commit
The iter objects shouldn't not be const. D'oh.
Behdad Esfahbod [Wed, 8 May 2019 16:56:29 +0000 (09:56 -0700)]
[iter] For ref-qualified variants
rsheeter [Wed, 8 May 2019 16:53:58 +0000 (09:53 -0700)]
Update README.md
rsheeter [Wed, 8 May 2019 16:53:29 +0000 (09:53 -0700)]
Update README.md
rsheeter [Wed, 8 May 2019 16:47:34 +0000 (09:47 -0700)]
[docs] add fuzzer instructions (courtesy of Garret)
Roderick Sheeter [Wed, 8 May 2019 16:42:35 +0000 (09:42 -0700)]
[docs] add sample commands for test exec
Behdad Esfahbod [Wed, 8 May 2019 16:48:55 +0000 (09:48 -0700)]
[iter] Fix hb_sink() to accept rvalue
Behdad Esfahbod [Wed, 8 May 2019 16:33:09 +0000 (09:33 -0700)]
[iter] Default predicates to hb_identity instead of hb_bool
The bool conversion happens after predicate is called automatically.
Behdad Esfahbod [Wed, 8 May 2019 16:32:19 +0000 (09:32 -0700)]
Adjust hb_all/any/none
Behdad Esfahbod [Wed, 8 May 2019 16:16:33 +0000 (09:16 -0700)]
Add hb_match
Behdad Esfahbod [Wed, 8 May 2019 16:14:44 +0000 (09:14 -0700)]
[algs] Try f[v] in hb_get() as last resort
Behdad Esfahbod [Wed, 8 May 2019 14:47:36 +0000 (07:47 -0700)]
Fix a few more double-pomotion errors
Behdad Esfahbod [Wed, 8 May 2019 06:28:22 +0000 (23:28 -0700)]
Fix signed comparison on 32bit
Behdad Esfahbod [Wed, 8 May 2019 06:26:09 +0000 (23:26 -0700)]
Fix more double-promotion errors
WHy do only some of the clang bots catch this I have no idea :(.
Behdad Esfahbod [Wed, 8 May 2019 06:13:38 +0000 (23:13 -0700)]
Fix double-promotion warnings
Make it an error.
Behdad Esfahbod [Wed, 8 May 2019 06:10:59 +0000 (23:10 -0700)]
More tests
Behdad Esfahbod [Wed, 8 May 2019 06:08:49 +0000 (23:08 -0700)]
[algs] Sprinkle hb_min/max with hb-forward salad
Let's see if fixes MSVC fail. Though, the error doesn't make sense to me.
hb-blob.cc
c:\projects\harfbuzz\src\hb-algs.hh(166): error C2440: 'return': cannot convert from 'unsigned int' to 'unsigned int &&' [C:\projects\harfbuzz\build\harfbuzz.vcxproj]
c:\projects\harfbuzz\src\hb-algs.hh(166): note: You cannot bind an lvalue to an rvalue reference
c:\projects\harfbuzz\src\hb-algs.hh(174): note: see reference to function template instantiation 'T &&<unnamed-type-hb_min>::impl<T,unsigned int&>(T &&,T2) const' being compiled
with
[
T=unsigned int,
T2=unsigned int &
]
Behdad Esfahbod [Wed, 8 May 2019 05:52:43 +0000 (22:52 -0700)]
[iter] Add value and projection to hb_all/any/none
Allows for eg, checking all values equal 2: hb_all (it, 2).
Behdad Esfahbod [Wed, 8 May 2019 05:45:01 +0000 (22:45 -0700)]
[iter] Accept rvalues to hb_enumerate()
Behdad Esfahbod [Wed, 8 May 2019 05:29:40 +0000 (22:29 -0700)]
[meta] Move hb_invoke from algs to meta
Behdad Esfahbod [Wed, 8 May 2019 04:39:20 +0000 (21:39 -0700)]
[meta] Replace most hb_enable_if with hb_requires
They do absolutely same thing. hb_requires is to encode constraints,
whereas hb_enable_if is for more conditional enabling.
Behdad Esfahbod [Wed, 8 May 2019 04:33:26 +0000 (21:33 -0700)]
[algs] Accept varargs in hb_min/max
Behdad Esfahbod [Wed, 8 May 2019 04:00:23 +0000 (21:00 -0700)]
Rename
Behdad Esfahbod [Wed, 8 May 2019 03:58:43 +0000 (20:58 -0700)]
Whitespace
Behdad Esfahbod [Wed, 8 May 2019 03:55:33 +0000 (20:55 -0700)]
Use universal references in hb_min/max
Behdad Esfahbod [Wed, 8 May 2019 03:54:31 +0000 (20:54 -0700)]
Remove MIN/MAX in favor of hb_min/hb_max
Behdad Esfahbod [Wed, 8 May 2019 00:23:46 +0000 (17:23 -0700)]
[serializer] Accept pointer & reference in more methods
Behdad Esfahbod [Wed, 8 May 2019 00:21:27 +0000 (17:21 -0700)]
[serializer] Minor
Behdad Esfahbod [Wed, 8 May 2019 00:21:18 +0000 (17:21 -0700)]
[meta] Fix addressof()
Behdad Esfahbod [Tue, 7 May 2019 23:53:03 +0000 (16:53 -0700)]
Whitespace
Behdad Esfahbod [Tue, 7 May 2019 22:56:51 +0000 (15:56 -0700)]
Add comment
Behdad Esfahbod [Tue, 7 May 2019 22:46:24 +0000 (15:46 -0700)]
[serialize] FeatureVariations subset->copy
Behdad Esfahbod [Tue, 7 May 2019 21:26:03 +0000 (14:26 -0700)]
Minor
Behdad Esfahbod [Tue, 7 May 2019 21:09:00 +0000 (14:09 -0700)]
[iter] Require lvalue in operators that return reference
Behdad Esfahbod [Tue, 7 May 2019 20:45:48 +0000 (13:45 -0700)]
Minor
Behdad Esfahbod [Tue, 7 May 2019 20:37:43 +0000 (13:37 -0700)]
[name] Clean up some more
Behdad Esfahbod [Tue, 7 May 2019 20:29:01 +0000 (13:29 -0700)]
[name] Clean up serialize() API
Behdad Esfahbod [Tue, 7 May 2019 20:26:15 +0000 (13:26 -0700)]
[name] Use iterators more
Behdad Esfahbod [Tue, 7 May 2019 19:45:38 +0000 (12:45 -0700)]
[serialize] Minor
Behdad Esfahbod [Tue, 7 May 2019 18:51:10 +0000 (11:51 -0700)]
Fix signed-comparison error on 32bit
Behdad Esfahbod [Tue, 7 May 2019 18:47:02 +0000 (11:47 -0700)]
Comment
Behdad Esfahbod [Tue, 7 May 2019 18:46:11 +0000 (11:46 -0700)]
[doc] Make header search more resilient
How stupid to scan all files... Sigh.
Behdad Esfahbod [Tue, 7 May 2019 18:39:44 +0000 (11:39 -0700)]
[ragel] Regenerate ragel-generated files using ragel 7.0.0.11 May 2018
Behdad Esfahbod [Tue, 7 May 2019 18:08:08 +0000 (11:08 -0700)]
[subset] Add TODO
Behdad Esfahbod [Tue, 7 May 2019 18:06:43 +0000 (11:06 -0700)]
[serialize] Enable bias assertion
Behdad Esfahbod [Tue, 7 May 2019 18:05:51 +0000 (11:05 -0700)]
[serialize] Use range-based loop
Behdad Esfahbod [Tue, 7 May 2019 18:01:02 +0000 (11:01 -0700)]
[name] Remove dead code
Behdad Esfahbod [Thu, 2 May 2019 23:29:07 +0000 (16:29 -0700)]
[subset] fix for name table serializing with new serializer machinery
Behdad Esfahbod [Thu, 2 May 2019 23:29:07 +0000 (16:29 -0700)]
[WIP] [name] Port to fancy serializer machinery
Behdad Esfahbod [Tue, 7 May 2019 07:34:50 +0000 (00:34 -0700)]
Remove use of deprecated implicit copy/move assignment operators
By removing custom copy constructor.
Behdad Esfahbod [Tue, 7 May 2019 07:33:32 +0000 (00:33 -0700)]
Warn on -Wdeprecated
Ebrahim Byagowi [Tue, 7 May 2019 07:34:00 +0000 (12:04 +0430)]
[ci] Upgrade Ubuntu 17.10 bots to 19.04
Behdad Esfahbod [Tue, 7 May 2019 07:13:11 +0000 (00:13 -0700)]
Actually make it work
Behdad Esfahbod [Tue, 7 May 2019 07:05:37 +0000 (00:05 -0700)]
[iter] Make filter/map copyable
Behdad Esfahbod [Tue, 7 May 2019 07:03:35 +0000 (00:03 -0700)]
[meta] Add hb_reference_wrapper<>
Functionality kinda superset of std:: counterpart.
Behdad Esfahbod [Tue, 7 May 2019 06:39:26 +0000 (23:39 -0700)]
Whitespace
Behdad Esfahbod [Tue, 7 May 2019 06:39:13 +0000 (23:39 -0700)]
Add hb_ref()
Unused.
Behdad Esfahbod [Tue, 7 May 2019 06:17:39 +0000 (23:17 -0700)]
Rename hb_deref_pointer() to hb_deref()
Behdad Esfahbod [Tue, 7 May 2019 06:04:32 +0000 (23:04 -0700)]
[iter] Adjust hb_filter
Behdad Esfahbod [Tue, 7 May 2019 02:57:15 +0000 (19:57 -0700)]
[iter] Implement range-based for loops
Part of https://github.com/harfbuzz/harfbuzz/issues/1648
Ebrahim Byagowi [Mon, 6 May 2019 20:54:55 +0000 (01:24 +0430)]
Ignore -Wc++11-compat as we require C++11 actually
pollutes gcc bots logs https://circleci.com/gh/harfbuzz/harfbuzz/85395
Behdad Esfahbod [Mon, 6 May 2019 19:16:51 +0000 (12:16 -0700)]
Remove HB_NO_OPTIONS in favor of HB_NO_GETENV
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sun, 5 May 2019 17:14:17 +0000 (10:14 -0700)]
[dispatch] Forward arguments in all dispatch multiplexers
Behdad Esfahbod [Sun, 5 May 2019 16:54:58 +0000 (09:54 -0700)]
Fix previous commit
Priority should be given to specific over dispatch. Broke sanitize before.
This fixes it, by moving prioritization to the context implementation, since
the correct priority cannot be done in the dispatch implementation. Done
for subset and sanitize only, which need it.
Behdad Esfahbod [Sun, 5 May 2019 16:23:35 +0000 (09:23 -0700)]
[dispatch] Use functionality from previous commit
To remove a couple of unwanted wrapper methods
Behdad Esfahbod [Sun, 5 May 2019 16:10:46 +0000 (09:10 -0700)]
[dispatch] Try obj.dispatch(c) before trying c->dispatch(obj)
Behdad Esfahbod [Fri, 3 May 2019 17:37:32 +0000 (10:37 -0700)]
Revert "[WIP] [name] Port to fancy serializer machinery"
This reverts commit
c7f366fbbb208d0a9103ac4ee4ac00ff726c31e4.
Don't know how it got to master!
Cody Planteen [Thu, 2 May 2019 19:03:15 +0000 (13:03 -0600)]
Add configuration option HB_NO_GETENV to disable use of getenv()
Behdad Esfahbod [Thu, 2 May 2019 23:29:07 +0000 (16:29 -0700)]
[WIP] [name] Port to fancy serializer machinery
Behdad Esfahbod [Thu, 2 May 2019 23:26:06 +0000 (16:26 -0700)]
[name] Add NameRecord::copy()
Behdad Esfahbod [Thu, 2 May 2019 23:25:00 +0000 (16:25 -0700)]
[name] Minor changes
Behdad Esfahbod [Thu, 2 May 2019 23:22:32 +0000 (16:22 -0700)]
[serialize] Disable assertion for now
Behdad Esfahbod [Thu, 2 May 2019 23:20:18 +0000 (16:20 -0700)]
[serialize] Misc getting copy() to work
Behdad Esfahbod [Thu, 2 May 2019 23:20:03 +0000 (16:20 -0700)]
[debug] Allow return_trace() to return any type
Behdad Esfahbod [Thu, 2 May 2019 23:19:34 +0000 (16:19 -0700)]
[test] Run "fonttools ttx" instead of "ttx"
Behdad Esfahbod [Thu, 2 May 2019 22:12:07 +0000 (15:12 -0700)]
[serialize] Check offset base is within (possibly end of) object
Behdad Esfahbod [Thu, 2 May 2019 22:03:41 +0000 (15:03 -0700)]
[name] Fix format of susbetted table to 0
Behdad Esfahbod [Thu, 2 May 2019 21:45:57 +0000 (14:45 -0700)]
[name] Use variable forwarding to simplify sanitize()
Behdad Esfahbod [Thu, 2 May 2019 21:42:37 +0000 (14:42 -0700)]
[name]
Behdad Esfahbod [Thu, 2 May 2019 21:39:52 +0000 (14:39 -0700)]
[serializer] Add copy() to (Unsized)ArrayOf
Behdad Esfahbod [Thu, 2 May 2019 21:22:31 +0000 (14:22 -0700)]
[serializer] Accept exact type in serialize_subset/copy()
Behdad Esfahbod [Thu, 2 May 2019 21:14:33 +0000 (14:14 -0700)]
[serialize] Take arguments in copy()
Behdad Esfahbod [Thu, 2 May 2019 21:04:51 +0000 (14:04 -0700)]
[serializer] Add serialize_copy()
Behdad Esfahbod [Thu, 2 May 2019 20:51:52 +0000 (13:51 -0700)]
Remove dead code
David Corbett [Thu, 2 May 2019 01:29:06 +0000 (21:29 -0400)]
Sync gen-vowel-constraints.py with current output
David Corbett [Wed, 1 May 2019 20:15:58 +0000 (16:15 -0400)]
Add dotted circles to more broken clusters
Ebrahim Byagowi [Tue, 30 Apr 2019 20:05:10 +0000 (13:05 -0700)]
Remove space between right angle brackets now that we have C++11 (#1689)
Ebrahim Byagowi [Tue, 30 Apr 2019 20:01:04 +0000 (13:01 -0700)]
[doc] Add documentation to hb_color_get_* and hb_directwrite_face_* (#1690)
David Corbett [Tue, 30 Apr 2019 17:35:50 +0000 (13:35 -0400)]
Fix some dead links
Ebrahim Byagowi [Mon, 29 Apr 2019 21:52:28 +0000 (14:52 -0700)]
Add color channels getters ABI (#1513)
So can be used with language wrappers
Ebrahim Byagowi [Mon, 29 Apr 2019 21:40:50 +0000 (02:10 +0430)]
[ci] Remove crosscompile-notest-freebsd9 bot
It was testing an old version of freebsd and now it's image is gone.
We really like to test the environment.
David Corbett [Mon, 29 Apr 2019 18:16:51 +0000 (14:16 -0400)]
Allow some Balinese Po & So as aksara modre bases