shithub: freetype+ttf2subf

Download patch

ref: 9a4c846e60e0260f79ce760fe2aef06857197eff
parent: 0a8ee851e05589f905f3d205cd84f2556f3584bb
author: Alexei Podtelezhnikov <[email protected]>
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.

git/fs: mount .git/fs: mount/attach disallowed
--- 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;
   }