Commit 64a9ef20d5632a096bc1dcd8f49ad8de434b443e

David Turner 2007-03-18T07:35:08

another bytecode regression fix. Hopefully, this should be the latest

diff --git a/ChangeLog b/ChangeLog
index 673e589..e714042 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,9 @@
 	* src/truetype/ttinterp.c (Ins_MDRP): another bytecode
 	regression fix; testing still needed
 
+	* src/truetype/ttinterp.c (Ins_MD): another bytecode
+	regression fix
+
 2007-03-17  David Turner   <david@freetype.org>
 
 	* src/truetype/ttinterp.c (Ins_IP): fixing wrong handling
diff --git a/src/truetype/ttinterp.c b/src/truetype/ttinterp.c
index 469c372..9b34a49 100644
--- a/src/truetype/ttinterp.c
+++ b/src/truetype/ttinterp.c
@@ -4839,16 +4839,18 @@
 
 
         if ( CUR.GS.gep0 == 0 || CUR.GS.gep1 == 0 )
-          FT_ARRAY_COPY( CUR.twilight.orus,
-                         CUR.twilight.org,
-                         CUR.twilight.n_points );
-
-        /* get scaled orus coordinates */
-        vec1.x = TT_MULFIX( CUR.zp0.org[L].x - CUR.zp1.orus[K].x,
-                            CUR.metrics.x_scale );
-        vec1.y = TT_MULFIX( CUR.zp0.orus[L].y - CUR.zp1.orus[L].y,
-                            CUR.metrics.y_scale );
-
+        {
+            vec1.x = CUR.zp0.org[L].x - CUR.zp1.org[K].x;
+            vec1.y = CUR.zp0.org[L].y - CUR.zp1.org[K].y;
+        }
+        else
+        {
+          /* get scaled orus coordinates */
+          vec1.x = TT_MULFIX( CUR.zp0.orus[L].x - CUR.zp1.orus[K].x,
+                              CUR.metrics.x_scale );
+          vec1.y = TT_MULFIX( CUR.zp0.orus[L].y - CUR.zp1.orus[K].y,
+                              CUR.metrics.y_scale );
+        }
         D = CUR_fast_dualproj( &vec1 );
 
 #else