Bug 53143

Summary: fonts loaded twice (redundantly)
Product: Fop - Now in Jira Reporter: Glenn Adams <gadams>
Component: fontsAssignee: fop-dev
Status: RESOLVED FIXED    
Severity: normal    
Priority: P2    
Version: trunk   
Target Milestone: ---   
Hardware: All   
OS: All   

Description Glenn Adams 2012-04-24 22:14:20 UTC
due to a coding error introduced in revision 1198853 [1], fonts are redundantly loaded twice

[1] http://svn.apache.org/viewvc?view=revision&revision=1198853

more specifically, the code change at [2]

[2] http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fonts/autodetect/FontFileFinder.java?r1=1198853&r2=1198852&pathrev=1198853

namely

     public List<URL> find(String dir) throws IOException {
         List<URL> results = new java.util.ArrayList<URL>();
         super.walk(new File(dir), results);
+        File directory = new File(dir);
+        if (!directory.isDirectory()) {
+            eventListener.fontDirectoryNotFound(this, dir);
+        } else {
+            super.walk(directory, results);
+        }
         return results;
     }

results in calling super.walk(...) twice which has the effect of adding each font twice to the returned List<URL>, which in turn results in each font being loaded twice in FontInfoConfigurator.addDirectories():

     fontURLList = fontFileFinder.find(directory);
     fontAdder.add(fontURLList, fontInfoList);
Comment 1 Glenn Adams 2012-04-24 22:42:50 UTC
http://svn.apache.org/viewvc?rev=1330050&view=rev