mirror of
https://github.com/openjdk/jdk.git
synced 2026-02-01 05:58:29 +00:00
8167630: jdeps --generate-module-info forgets to close the resource after checking any unnamed package
Reviewed-by: lancea, ksrini
This commit is contained in:
parent
b79835c56b
commit
440c2fb03c
@ -680,20 +680,21 @@ class JdepsTask {
|
||||
private boolean genModuleInfo(JdepsConfiguration config) throws IOException {
|
||||
// check if any JAR file contains unnamed package
|
||||
for (String arg : inputArgs) {
|
||||
Optional<String> classInUnnamedPackage =
|
||||
ClassFileReader.newInstance(Paths.get(arg))
|
||||
.entries().stream()
|
||||
.filter(n -> n.endsWith(".class"))
|
||||
.filter(cn -> toPackageName(cn).isEmpty())
|
||||
.findFirst();
|
||||
try (ClassFileReader reader = ClassFileReader.newInstance(Paths.get(arg))) {
|
||||
Optional<String> classInUnnamedPackage =
|
||||
reader.entries().stream()
|
||||
.filter(n -> n.endsWith(".class"))
|
||||
.filter(cn -> toPackageName(cn).isEmpty())
|
||||
.findFirst();
|
||||
|
||||
if (classInUnnamedPackage.isPresent()) {
|
||||
if (classInUnnamedPackage.get().equals("module-info.class")) {
|
||||
reportError("err.genmoduleinfo.not.jarfile", arg);
|
||||
} else {
|
||||
reportError("err.genmoduleinfo.unnamed.package", arg);
|
||||
if (classInUnnamedPackage.isPresent()) {
|
||||
if (classInUnnamedPackage.get().equals("module-info.class")) {
|
||||
reportError("err.genmoduleinfo.not.jarfile", arg);
|
||||
} else {
|
||||
reportError("err.genmoduleinfo.unnamed.package", arg);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user