1.1 --- a/src/share/classes/com/sun/tools/javap/JavapFileManager.java Mon Jun 16 13:28:00 2008 -0700 1.2 +++ b/src/share/classes/com/sun/tools/javap/JavapFileManager.java Tue Jun 17 10:44:32 2008 -0700 1.3 @@ -25,16 +25,13 @@ 1.4 1.5 package com.sun.tools.javap; 1.6 1.7 -import java.io.File; 1.8 import java.io.PrintWriter; 1.9 import java.nio.charset.Charset; 1.10 -import javax.tools.Diagnostic; 1.11 import javax.tools.DiagnosticListener; 1.12 import javax.tools.JavaFileObject; 1.13 1.14 import com.sun.tools.javac.file.JavacFileManager; 1.15 import com.sun.tools.javac.util.Context; 1.16 -import com.sun.tools.javac.util.JCDiagnostic; 1.17 1.18 /** 1.19 * javap's implementation of JavaFileManager. 1.20 @@ -52,29 +49,8 @@ 1.21 static JavapFileManager create(final DiagnosticListener<? super JavaFileObject> dl, PrintWriter log, Options options) { 1.22 Context javac_context = new Context(); 1.23 1.24 - if (dl != null) { 1.25 - // Workaround bug 6625520: javac handles missing entries on classpath badly 1.26 - // Ignore spurious errors for missing files 1.27 - DiagnosticListener<JavaFileObject> wrapper = new DiagnosticListener<JavaFileObject>() { 1.28 - public void report(Diagnostic<? extends JavaFileObject> diagnostic) { 1.29 - if (diagnostic instanceof JCDiagnostic) { 1.30 - JCDiagnostic jcd = (JCDiagnostic) diagnostic; 1.31 - if (jcd.getCode().equals("compiler.err.error.reading.file")) { 1.32 - Object[] args = jcd.getArgs(); 1.33 - if (args.length > 0 && args[0] != null && args[0].toString().length() > 0) { 1.34 - File f = new File(args[0].toString()); 1.35 - if (!f.exists()) 1.36 - return; 1.37 - } 1.38 - } 1.39 - 1.40 - } 1.41 - dl.report(diagnostic); 1.42 - } 1.43 - }; 1.44 - javac_context.put(DiagnosticListener.class, wrapper); 1.45 - } 1.46 - 1.47 + if (dl != null) 1.48 + javac_context.put(DiagnosticListener.class, dl); 1.49 javac_context.put(com.sun.tools.javac.util.Log.outKey, log); 1.50 1.51 return new JavapFileManager(javac_context, null);