Commit 99e60d840db667ec9f50e481572aa5df97d23836

Werner Lemberg 2013-06-10T01:44:37

Fix Savannah bug #39160. * src/truetype/ttinterp.c (Ins_SDPVTL): Set projection vector too for the degenerate case.

diff --git a/ChangeLog b/ChangeLog
index d85fde8..653ca42 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2013-06-10  Werner Lemberg  <wl@gnu.org>
+
+	Fix Savannah bug #39160.
+
+	* src/truetype/ttinterp.c (Ins_SDPVTL): Set projection vector too
+	for the degenerate case.
+
 2013-06-09  David Turner  <digit@google.com>
 
 	* src/cache/ftcmanag.c (FTC_Manager_Reset): Add missing cache flush.
diff --git a/src/truetype/ttinterp.c b/src/truetype/ttinterp.c
index 47ceca1..798d4a9 100644
--- a/src/truetype/ttinterp.c
+++ b/src/truetype/ttinterp.c
@@ -5398,6 +5398,12 @@
 
       A = v1->x - v2->x;
       B = v1->y - v2->y;
+
+      if ( A == 0 && B == 0 )
+      {
+        A    = 0x4000;
+        aOpc = 0;
+      }
     }
 
     if ( ( aOpc & 1 ) != 0 )