Commit d277bfc985130d897734d747ddf2649452fd3eeb

Werner Lemberg 2018-07-27T09:15:43

[psaux, type1]: More tracing improvements. * src/psaux/psintrp.c (cf2_interpT2CharString): Trace skipped outline commands. * src/psaux/t1decode.c (t1_decoder_parse_charstring): Fix missing case. (t1_decoder_parse_metrics): Make tracing output more compact. * src/type1/t1gload.c (T1_Compute_Max_Advance): Be less verbose. (T1_Get_Advances): Add tracing.

diff --git a/ChangeLog b/ChangeLog
index 9f787aa..5e8fe81 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2018-07-27  Werner Lemberg  <wl@gnu.org>
+
+	[psaux, type1]: More tracing improvements.
+
+	* src/psaux/psintrp.c (cf2_interpT2CharString): Trace skipped
+	outline commands.
+
+	* src/psaux/t1decode.c (t1_decoder_parse_charstring): Fix
+	missing case.
+	(t1_decoder_parse_metrics): Make tracing output more compact.
+
+	* src/type1/t1gload.c (T1_Compute_Max_Advance): Be less verbose.
+	(T1_Get_Advances): Add tracing.
+
 2018-07-25  Werner Lemberg  <wl@gnu.org>
 
 	[psaux, type1] Trace PostScript dictionaries and other things.
diff --git a/src/psaux/psintrp.c b/src/psaux/psintrp.c
index 8436145..145b672 100644
--- a/src/psaux/psintrp.c
+++ b/src/psaux/psintrp.c
@@ -663,6 +663,7 @@
           /* Skip outline commands first time round.       */
           /* `endchar' will trigger initial hintmap build  */
           /* and rewind the charstring.                    */
+          FT_TRACE4(( " <outline command skipped>\n" ));
           cf2_stack_clear( opStack );
           continue;
         }
diff --git a/src/psaux/t1decode.c b/src/psaux/t1decode.c
index b763e35..6745603 100644
--- a/src/psaux/t1decode.c
+++ b/src/psaux/t1decode.c
@@ -161,6 +161,7 @@
 
 
 #ifdef T1_CONFIG_OPTION_OLD_ENGINE
+
   /**************************************************************************
    *
    * @Function:
@@ -1269,7 +1270,10 @@
           /* the glyph's metrics (lsb + advance width), not load the   */
           /* rest of it; so exit immediately                           */
           if ( builder->metrics_only )
+          {
+            FT_TRACE4(( "\n" ));
             return FT_Err_Ok;
+          }
 
           break;
 
@@ -1652,7 +1656,9 @@
     return FT_THROW( Stack_Underflow );
   }
 
-#else /* T1_CONFIG_OPTION_OLD_ENGINE */
+
+#else /* !T1_CONFIG_OPTION_OLD_ENGINE */
+
 
   /**************************************************************************
    *
@@ -1697,9 +1703,6 @@
 
     builder->parse_state = T1_Parse_Start;
 
-    FT_TRACE4(( "\n"
-                "Start charstring: get width\n" ));
-
     zone->base           = charstring_base;
     limit = zone->limit  = charstring_base + charstring_len;
     ip    = zone->cursor = zone->base;
@@ -1892,6 +1895,7 @@
           /* we only want to compute the glyph's metrics */
           /* (lsb + advance width), not load the rest of */
           /* it; so exit immediately                     */
+          FT_TRACE4(( "\n" ));
           return FT_Err_Ok;
 
         case op_sbw:
@@ -1910,6 +1914,7 @@
           /* we only want to compute the glyph's metrics */
           /* (lsb + advance width), not load the rest of */
           /* it; so exit immediately                     */
+          FT_TRACE4(( "\n" ));
           return FT_Err_Ok;
 
         default:
@@ -1934,7 +1939,8 @@
   Stack_Underflow:
     return FT_THROW( Stack_Underflow );
   }
-#endif /* T1_CONFIG_OPTION_OLD_ENGINE */
+
+#endif /* !T1_CONFIG_OPTION_OLD_ENGINE */
 
 
   /* initialize T1 decoder */
diff --git a/src/type1/t1gload.c b/src/type1/t1gload.c
index c1d5de4..87c2a0f 100644
--- a/src/type1/t1gload.c
+++ b/src/type1/t1gload.c
@@ -250,7 +250,7 @@
 
     *max_advance = 0;
 
-    FT_TRACE6(( "T1_Compute_Max_Advance: start parsing glyphs\n" ));
+    FT_TRACE6(( "T1_Compute_Max_Advance:\n" ));
 
     /* for each glyph, parse the glyph charstring and extract */
     /* the advance width                                      */
@@ -264,8 +264,7 @@
       /* ignore the error if one occurred - skip to next glyph */
     }
 
-    FT_TRACE6(( "T1_Compute_Max_Advance: parsing glyphs done\n"
-                "                        max advance: %f\n",
+    FT_TRACE6(( "T1_Compute_Max_Advance: max advance: %f\n",
                 *max_advance / 65536.0 ));
 
     psaux->t1_decoder_funcs->done( &decoder );
@@ -289,6 +288,8 @@
     FT_Error       error;
 
 
+    FT_TRACE5(( "T1_Get_Advances:\n" ));
+
     if ( load_flags & FT_LOAD_VERTICAL_LAYOUT )
     {
       for ( nn = 0; nn < count; nn++ )