Commit 69e7ee03915acec45667c30148f893950c7694bd

David Turner 2002-05-28T20:29:12

* src/pshinter/pshglob.c (psh_blues_scale_zones): fixed a bug that prevented family blue zones substitution from hapenning correctly

diff --git a/ChangeLog b/ChangeLog
index 560a685..00c8ffc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2005-05-28  David Turner  <david@freetype.org>
 
+    * src/pshinter/pshglob.c (psh_blues_scale_zones): fixed a bug that
+    prevented family blue zones substitution from hapenning correctly
+
     * include/freetype/ftbdf.h: adding documentation comments for the
     API reference describing the new function FT_Get_BDF_Charset_ID.
 
diff --git a/src/pshinter/pshglob.c b/src/pshinter/pshglob.c
index 45cc067..a8904ac 100644
--- a/src/pshinter/pshglob.c
+++ b/src/pshinter/pshglob.c
@@ -488,7 +488,14 @@
 
         for ( ; count2 > 0; count2--, zone2++ )
         {
-          if ( FT_MulFix( zone1->org_ref - zone2->org_ref, scale ) < 64 )
+          FT_Pos   delta;
+
+
+          delta = zone1->org_ref - zone2->org_ref;
+          if ( delta < 0 )
+            delta = -delta;
+
+          if ( FT_MulFix( delta, scale ) < 64 )
           {
             zone1->cur_top    = zone2->cur_top;
             zone1->cur_bottom = zone2->cur_bottom;