Commit d949a3db5809e9ad258a5933a606d1ae9ff0c25a

Werner Lemberg 2016-11-29T12:09:56

[smooth] Avoid conditional jump on uninitialized value (#49711). * src/smooth/ftgrays.c (gray_raster_render): Initialize `worker'.

diff --git a/ChangeLog b/ChangeLog
index 9eda81b..033dee2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2016-11-29  Werner Lemberg  <wl@gnu.org>
+
+	[smooth] Avoid conditional jump on uninitialized value (#49711).
+
+	* src/smooth/ftgrays.c (gray_raster_render): Initialize `worker'.
+
 2016-11-27  Nikolaus Waxweiler  <madigens@gmail.com>
 
 	[autofit] Code shuffling.
diff --git a/src/smooth/ftgrays.c b/src/smooth/ftgrays.c
index 7e83fb1..ccfd603 100644
--- a/src/smooth/ftgrays.c
+++ b/src/smooth/ftgrays.c
@@ -1840,8 +1840,8 @@ typedef ptrdiff_t  FT_PtrDist;
   gray_raster_render( FT_Raster                raster,
                       const FT_Raster_Params*  params )
   {
-    const FT_Outline*  outline     = (const FT_Outline*)params->source;
-    const FT_Bitmap*   target_map  = params->target;
+    const FT_Outline*  outline    = (const FT_Outline*)params->source;
+    const FT_Bitmap*   target_map = params->target;
     FT_BBox            cbox, clip;
 
 #ifndef FT_STATIC_RASTER
@@ -1870,6 +1870,8 @@ typedef ptrdiff_t  FT_PtrDist;
            outline->contours[outline->n_contours - 1] + 1 )
       return FT_THROW( Invalid_Outline );
 
+    FT_ZERO( worker );
+
     ras.outline = *outline;
 
     if ( params->flags & FT_RASTER_FLAG_DIRECT )