Commit dcb61e478566a67134a16195ca462730c1bb1030

David Turner 2002-07-05T15:54:26

* src/pfr/pfrobjs.c (pfr_slot_load): fixed a small bug that returned incorrect advances when the outline resolution was different from the metrics resolution * src/autohint/ahhint.c: removing compiler warnings * src/autohint/ahglyph.c: slight improvements to the serif detection code. More work is needed though..

diff --git a/ChangeLog b/ChangeLog
index f81ff22..cefe642 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2002-07-04  David Turner  <david@freetype.org>
+
+    * src/pfr/pfrobjs.c (pfr_slot_load): fixed a small bug that returned
+    incorrect advances when the outline resolution was different from the
+    metrics resolution
+
+    * src/autohint/ahhint.c: removing compiler warnings
+    
+    * src/autohint/ahglyph.c: slight improvements to the serif detection
+    code. More work is needed though..
+
 2002-07-03  David Turner  <david@freetype.org>
 
     * src/autohint/ahglobal.c, src/autohint/ahtypes.h, src/autohint/ahhint.c:
diff --git a/src/autohint/ahglyph.c b/src/autohint/ahglyph.c
index da63259..2439c20 100644
--- a/src/autohint/ahglyph.c
+++ b/src/autohint/ahglyph.c
@@ -984,19 +984,19 @@
                 max = seg2->max_coord;
 
               len   = max - min;
-              dist  = seg2->pos - seg1->pos;
-              if ( dist < 0 )
-                dist = -dist;
-
-              if ( len < 8 )
-                score = 300*8 + dist - len*3;
-              else
-                score = dist + 300/len;
-
-              if ( score < best_score )
+              if ( len >= 8 )
               {
-                best_score   = score;
-                best_segment = seg2;
+                dist  = seg2->pos - seg1->pos;
+                if ( dist < 0 )
+                  dist = -dist;
+  
+                score = dist + 3000/len;
+  
+                if ( score < best_score )
+                {
+                  best_score   = score;
+                  best_segment = seg2;
+                }
               }
             }
           }
diff --git a/src/autohint/ahhint.c b/src/autohint/ahhint.c
index 945911c..813f4a4 100644
--- a/src/autohint/ahhint.c
+++ b/src/autohint/ahhint.c
@@ -40,7 +40,7 @@
   /*************************************************************************/
   /*************************************************************************/
 
-
+#if 0
   /* snap a given width in scaled coordinates to one of the */
   /* current standard widths                                */
   static FT_Pos
@@ -86,7 +86,7 @@
 
     return width;
   }
-
+#endif
 
   /* compute the snapped width of a given stem */
   static FT_Pos
@@ -364,7 +364,6 @@
 
         {
           FT_Bool  min = 0;
-          FT_Pos   delta;
 
           if ( !anchor )
           {
diff --git a/src/pfr/pfrobjs.c b/src/pfr/pfrobjs.c
index fc76462..69fb7e1 100644
--- a/src/pfr/pfrobjs.c
+++ b/src/pfr/pfrobjs.c
@@ -277,9 +277,9 @@
         advance = FT_MulDiv( advance, em_outline, em_metrics );
 
       if ( face->phy_font.flags & PFR_PHY_VERTICAL )
-        metrics->vertAdvance = gchar->advance;
+        metrics->vertAdvance = advance;
       else
-        metrics->horiAdvance = gchar->advance;
+        metrics->horiAdvance = advance;
 
       slot->root.linearHoriAdvance = metrics->horiAdvance;
       slot->root.linearVertAdvance = metrics->vertAdvance;