ref: 9a4c846e60e0260f79ce760fe2aef06857197eff
parent: 0a8ee851e05589f905f3d205cd84f2556f3584bb
author: Alexei Podtelezhnikov <apodtele@gmail.com>
date: Tue Sep 14 17:25:47 EDT 2021
[cache] Revert to some zeroing. * src/cache/ftccache.c (ftc_cache_init, ftc_cache_resize): Zero `buckets` again to fix some crashes.
--- a/src/cache/ftccache.c
+++ b/src/cache/ftccache.c
@@ -119,7 +119,7 @@
FT_UFast count = mask + p + 1; /* number of buckets */
- /* do we need to shrink the buckets array? */
+ /* do we need to expand the buckets array? */
if ( cache->slack < 0 )
{
FTC_Node new_list = NULL;
@@ -135,7 +135,7 @@
/* if we can't expand the array, leave immediately */
- if ( FT_QRENEW_ARRAY( cache->buckets,
+ if ( FT_RENEW_ARRAY( cache->buckets,
( mask + 1 ) * 2, ( mask + 1 ) * 4 ) )
break;
}
@@ -172,7 +172,7 @@
cache->p = p + 1;
}
- /* do we need to expand the buckets array? */
+ /* do we need to shrink the buckets array? */
else if ( cache->slack > (FT_Long)count * FTC_HASH_SUB_LOAD )
{
FT_UFast old_index = p + mask;
@@ -341,7 +341,7 @@
cache->mask = FTC_HASH_INITIAL_SIZE - 1;
cache->slack = FTC_HASH_INITIAL_SIZE * FTC_HASH_MAX_LOAD;
- (void)FT_QNEW_ARRAY( cache->buckets, FTC_HASH_INITIAL_SIZE * 2 );
+ (void)FT_NEW_ARRAY( cache->buckets, FTC_HASH_INITIAL_SIZE * 2 );
return error;
}