Merge branch '2.2.x' into 2.3.x

pull/23585/head
Phillip Webb 4 years ago
commit 5c1055dc22

@ -360,11 +360,12 @@ class JarFileEntries implements CentralDirectoryVisitor, Iterable<JarEntry> {
try (JarInputStream certifiedJarStream = new JarInputStream(this.jarFile.getData().getInputStream())) { try (JarInputStream certifiedJarStream = new JarInputStream(this.jarFile.getData().getInputStream())) {
java.util.jar.JarEntry certifiedEntry = null; java.util.jar.JarEntry certifiedEntry = null;
while ((certifiedEntry = certifiedJarStream.getNextJarEntry()) != null) { while ((certifiedEntry = certifiedJarStream.getNextJarEntry()) != null) {
// Entry must be closed to trigger a read and set entry certificates
certifiedJarStream.closeEntry();
int index = getEntryIndex(certifiedEntry.getName()); int index = getEntryIndex(certifiedEntry.getName());
if (index != -1) { if (index != -1) {
certifications[index] = JarEntryCertification.from(certifiedEntry); certifications[index] = JarEntryCertification.from(certifiedEntry);
} }
certifiedJarStream.closeEntry();
} }
} }
this.certifications = certifications; this.certifications = certifications;

@ -437,10 +437,13 @@ class JarFileTests {
while (actualEntries.hasMoreElements()) { while (actualEntries.hasMoreElements()) {
JarEntry actualEntry = actualEntries.nextElement(); JarEntry actualEntry = actualEntries.nextElement();
java.util.jar.JarEntry expectedEntry = expected.getJarEntry(actualEntry.getName()); java.util.jar.JarEntry expectedEntry = expected.getJarEntry(actualEntry.getName());
assertThat(actualEntry.getCertificates()).as(actualEntry.getName()) StreamUtils.drain(expected.getInputStream(expectedEntry));
.isEqualTo(expectedEntry.getCertificates()); if (!actualEntry.getName().equals("META-INF/MANIFEST.MF")) {
assertThat(actualEntry.getCodeSigners()).as(actualEntry.getName()) assertThat(actualEntry.getCertificates()).as(actualEntry.getName())
.isEqualTo(expectedEntry.getCodeSigners()); .isEqualTo(expectedEntry.getCertificates());
assertThat(actualEntry.getCodeSigners()).as(actualEntry.getName())
.isEqualTo(expectedEntry.getCodeSigners());
}
} }
assertThat(stopWatch.getTotalTimeSeconds()).isLessThan(3.0); assertThat(stopWatch.getTotalTimeSeconds()).isLessThan(3.0);
} }

Loading…
Cancel
Save