Commit 78371bd641a0d324e25216acf9d89bf07cf3b6ae

Werner Lemberg 2016-02-07T21:06:59

Fix another runtime error found by clang's sanitizer (#47082). * src/base/ftstroke.c (ft_stroke_border_export): Properly handle empty input buffer.

diff --git a/ChangeLog b/ChangeLog
index 5031a00..e9adf4b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2016-02-07  Werner Lemberg  <wl@gnu.org>
 
+	Fix another runtime error found by clang's sanitizer (#47082).
+
+	* src/base/ftstroke.c (ft_stroke_border_export): Properly handle
+	empty input buffer.
+
+2016-02-07  Werner Lemberg  <wl@gnu.org>
+
 	Fix runtime errors found by clang's sanitizer (#47082).
 
 	* src/base/ftobjs.c (FT_Render_Glyph_Internal), src/base/ftoutln.c
@@ -138,7 +145,7 @@
 
 2016-01-20  Werner Lemberg  <wl@gnu.org>
 
-	[autofix] Complete last autofit commit.
+	[autofit] Complete last autofit commit.
 
 	Problem reported by Kostya Serebryany <kcc@google.com>.
 
diff --git a/src/base/ftstroke.c b/src/base/ftstroke.c
index 2dbbaae..4f3c493 100644
--- a/src/base/ftstroke.c
+++ b/src/base/ftstroke.c
@@ -712,9 +712,10 @@
                            FT_Outline*      outline )
   {
     /* copy point locations */
-    FT_ARRAY_COPY( outline->points + outline->n_points,
-                   border->points,
-                   border->num_points );
+    if ( border->num_points )
+      FT_ARRAY_COPY( outline->points + outline->n_points,
+                     border->points,
+                     border->num_points );
 
     /* copy tags */
     {