langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/ClassFinder.java
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/ClassFinder.java Tue Apr 28 11:08:25 2015 +0300
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/ClassFinder.java Tue Apr 28 22:25:36 2015 +0200
@@ -128,7 +128,7 @@
* the completer to be used for ".java" files. If this remains unassigned
* ".java" files will not be loaded.
*/
- public Completer sourceCompleter = null;
+ public Completer sourceCompleter = Completer.NULL_COMPLETER;
/** The path name of the class file currently being read.
*/
@@ -341,7 +341,7 @@
reader.readClassFile(c);
c.flags_field |= getSupplementaryFlags(c);
} else {
- if (sourceCompleter != null) {
+ if (!sourceCompleter.isTerminal()) {
sourceCompleter.complete(c);
} else {
throw new IllegalStateException("Source completer required to read "
@@ -392,7 +392,7 @@
public ClassSymbol loadClass(Name flatname) throws CompletionFailure {
boolean absent = syms.classes.get(flatname) == null;
ClassSymbol c = syms.enterClass(flatname);
- if (c.members_field == null && c.completer != null) {
+ if (c.members_field == null) {
try {
c.complete();
} catch (CompletionFailure ex) {