freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freetype2] master 156b30b 8/9: [cff] Sanitize `initialRandomSeed'.


From: Werner LEMBERG
Subject: [freetype2] master 156b30b 8/9: [cff] Sanitize `initialRandomSeed'.
Date: Mon, 20 Feb 2017 03:16:25 -0500 (EST)

branch: master
commit 156b30b1aadb958f795e9888f5dfd115aae0fcec
Author: Werner Lemberg <address@hidden>
Commit: Werner Lemberg <address@hidden>

    [cff] Sanitize `initialRandomSeed'.
    
    * src/cff/cffload.c (cff_load_private_dict): Make
    `initial_random_seed' value always positive.
---
 ChangeLog         | 7 +++++++
 src/cff/cffload.c | 7 +++++++
 2 files changed, 14 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 98f58cc..cb2b776 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2017-02-20  Werner Lemberg  <address@hidden>
 
+       [cff] Sanitize `initialRandomSeed'.
+
+       * src/cff/cffload.c (cff_load_private_dict): Make
+       `initial_random_seed' value always positive.
+
+2017-02-20  Werner Lemberg  <address@hidden>
+
        [cff] Introduce `random-seed' property (2/2).
 
        * src/base/ftobjs.c: Include `FT_CFF_DRIVER_H'.
diff --git a/src/cff/cffload.c b/src/cff/cffload.c
index 935e612..9122ff9 100644
--- a/src/cff/cffload.c
+++ b/src/cff/cffload.c
@@ -1913,6 +1913,13 @@
     /* ensure that `num_blue_values' is even */
     priv->num_blue_values &= ~1;
 
+    /* sanitize `initialRandomSeed' to be a positive value, if necessary;  */
+    /* this is not mandated by the specification but by our implementation */
+    if ( priv->initial_random_seed < 0 )
+      priv->initial_random_seed = -priv->initial_random_seed;
+    else if ( priv->initial_random_seed == 0 )
+      priv->initial_random_seed = 987654321;
+
   Exit:
     /* clean up */
     cff_blend_clear( subfont ); /* clear blend stack */



reply via email to

[Prev in Thread] Current Thread [Next in Thread]