< prev index next >

src/jdk.compiler/share/classes/com/sun/tools/javac/code/ClassFinder.java

Print this page

        

*** 551,561 **** --- 551,585 ---- String packageName = p.fullname.toString(); Location classLocn = msym.classLocation; Location sourceLocn = msym.sourceLocation; + Location patchLocn = msym.patchLocation; + Location patchOutLocn = msym.patchOutputLocation; + boolean prevPreferCurrent = preferCurrent; + + try { + preferCurrent = false; + if (wantClassFiles && (patchOutLocn != null)) { + fillIn(p, patchOutLocn, + list(patchOutLocn, + p, + packageName, + classKinds)); + } + if ((wantClassFiles || wantSourceFiles) && (patchLocn != null)) { + Set<JavaFileObject.Kind> combined = EnumSet.noneOf(JavaFileObject.Kind.class); + combined.addAll(classKinds); + combined.addAll(sourceKinds); + fillIn(p, patchLocn, + list(patchLocn, + p, + packageName, + combined)); + } + preferCurrent = true; if (wantClassFiles && (classLocn != null)) { fillIn(p, classLocn, list(classLocn, p, packageName,
*** 566,575 **** --- 590,602 ---- list(sourceLocn, p, packageName, sourceKinds)); } + } finally { + preferCurrent = prevPreferCurrent; + } } /** * Scans class path and source path for files in given package. */
< prev index next >