Behdad Esfahbod
4099c66f70
[map] Don't return INVALID from get() just because in_error
7 years ago
Behdad Esfahbod
2578390773
[map] Fix bool use in C API
7 years ago
Behdad Esfahbod
a9fa39dca5
[map] More minor
7 years ago
Behdad Esfahbod
f76c4a7708
[map] Make initial resize actually work
7 years ago
Behdad Esfahbod
661e9ae4a5
[map] Add clear(), is_empty(), and get_population()
7 years ago
Behdad Esfahbod
b6959c33e2
[map] Minor
7 years ago
Behdad Esfahbod
686476a8ae
[map] Track population and occupancy separately
7 years ago
Behdad Esfahbod
8a978790cb
[map] Minor
7 years ago
Behdad Esfahbod
6f12ce47c0
Revert "[map] Return bool from set()"
...
This reverts commit face7cf55d
.
7 years ago
Behdad Esfahbod
fc51c45079
Revert "[map] Make hb_map_set() return bool"
...
This reverts commit 7bf1980146
.
7 years ago
Behdad Esfahbod
7bf1980146
[map] Make hb_map_set() return bool
7 years ago
Behdad Esfahbod
face7cf55d
[map] Return bool from set()
7 years ago
Behdad Esfahbod
e94be200bd
[map] Implement operator[] for get()ting
7 years ago
Behdad Esfahbod
743fdd9c61
[map] First try at implementing an integer-to-integer hashmap
...
Fully untested.
7 years ago
Ebrahim Byagowi
65c82179c9
[blob] Use MAP_NORESERVE if available ( #1039 )
...
MAP_NORESERVE is not available on macOS for example so set the flag
to zero if not defined on the headers.
7 years ago
Behdad Esfahbod
1ce40d900a
[set] Remove stale comment
7 years ago
Behdad Esfahbod
6c2227640b
Add HB_DISALLOW_COPY_AND_ASSIGN
7 years ago
Behdad Esfahbod
fd3d004231
Move pool definitions to hb-static.cc
7 years ago
Behdad Esfahbod
7f7b1370d3
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.
7 years ago
Behdad Esfahbod
31c4236d96
Underflow protection in hb_vector_t
7 years ago
Behdad Esfahbod
f83e992c8b
Mark CrapPool thread_local
...
Not sure if I like to keep it. For now, aim for correctness.
7 years ago
Behdad Esfahbod
5d80129891
Add CrapPool
...
Common Regoin for Access Protection. Like the NullPool, but writable.
7 years ago
Behdad Esfahbod
673b764de0
Move code around
7 years ago
Behdad Esfahbod
65aeabd622
Add hb_vector_t::push(const Type &v)
...
Makes for cleaner code.
7 years ago
Ebrahim Byagowi
38ae0add70
[ci] Revive the SunCC bot
...
* Adds libnsl to the bot as it is now needed apparently
* Disables hb-icu, apparently the newer ICU itself is not compatible with SunCC
7 years ago
Behdad Esfahbod
6c818c5516
Actually enable vectorized operations
...
Fixup for previous commit. Was accidentally turned off.
7 years ago
Behdad Esfahbod
f56a250b04
Another try at smart vectorization
...
Make clang happy. Also, don't use anonymous union.
7 years ago
Behdad Esfahbod
b995b501ef
Try enabling vectorization smartly
...
We'll see if this sticks to the bots.
7 years ago
Behdad Esfahbod
dd22c29f95
[set] Always check population before checking for equality
7 years ago
Behdad Esfahbod
2eb9bbd986
[test/text-rendering-tests] Update from upstream
7 years ago
Ebrahim Byagowi
8eb53b853d
Minor, make CreateFile compatible with the disabled writable flag
...
"writable" is not in use and probably we can go in the reverse direction
and remove the flags that are useful for enabled writable, this is just
for the sake of completeness however.
7 years ago
Ebrahim Byagowi
33eb1bd23b
Remove unnecessary headers and definitions of hb-blob ( #1028 )
...
It removes io.h and other polyfills which we no longer need as 7e76d74
7 years ago
Ebrahim Byagowi
7e76d746e2
Make hb_blob_create_from_file more portable ( #1027 )
...
This makes it compatible with ARMCC which I had access in
a collaboration with @imgtec , thanks!
Basically hb_blob_create_from_file features three code paths,
mmap, Win32 and fallback.
We had fallback implementation even before this but it was relied
to "open" which is not available on some environments. This change
improved the situtation by using only fopen and friends for
fallback path.
Interestingly we could use "open" on Windows but in fact it was
emulated by MSVCRT so I've completely split that from Unix path
now that we have a distinct path for fallback path also.
7 years ago
Behdad Esfahbod
e99d75ea9c
Fix warning
7 years ago
Behdad Esfahbod
191c4edc54
Reinstante DEFINE_NULL_DATA
...
Seems like I messed up; buffer overrun got reported.
7 years ago
Ebrahim Byagowi
93bdf9b2df
Use arrayZ on hb-coretext and hb-uniscribe and fix macOS/Win bots ( #1024 )
...
Following to 63f57f4
7 years ago
Behdad Esfahbod
63f57f4dab
Mark more unsized array's as arrayZ
7 years ago
Behdad Esfahbod
091c17df5a
Use UnsizedArrayOf<> in one place where [VAR] was used
...
Trying to see how many can converted meaningfully.
7 years ago
Behdad Esfahbod
0644d92ef3
Merge pull request #1018 from googlefonts/cmap4
...
[subset] Add cmap format 4 subsetting.
7 years ago
Behdad Esfahbod
2a2e28e701
Don't keep instance in hb_table_lazy_loader_t
7 years ago
Behdad Esfahbod
57bac8f699
Rename
7 years ago
Behdad Esfahbod
2a46a020fd
Minor
7 years ago
Behdad Esfahbod
eba1c16a60
Always lock blob in sanitize. Remove blob->lock_as() in favor of blob->lock()
7 years ago
Behdad Esfahbod
b4fa505014
Move Sanitizer::lock_instance<>() to blob->lock_as<>().
7 years ago
Behdad Esfahbod
abc12f7b81
Move null pool to hb-private
7 years ago
Behdad Esfahbod
08e280fd84
Rename hb_string_t to hb_bytes_t
7 years ago
Behdad Esfahbod
bd021a6720
Minor
7 years ago
Behdad Esfahbod
16e4ccf7b4
Allocate user-data-array on the heap
...
This saves each object allocation 72 bytes. Now object overhead is just
16 bytes (on x86) instead of 88 bytes. Neat.
7 years ago
Behdad Esfahbod
61920b21ca
Oops
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1023
7 years ago
Behdad Esfahbod
f673cfbd64
Support scripts that are written both LTR and RTL
...
Right now only Old Italic is marked as such.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1000
7 years ago