Commit 9540905e authored by Andy Wilkinson's avatar Andy Wilkinson

Merge branch '2.1.x'

parents ff6ef1e5 68e3de03
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
...@@ -34,6 +34,8 @@ class JarEntry extends java.util.jar.JarEntry implements FileHeader { ...@@ -34,6 +34,8 @@ class JarEntry extends java.util.jar.JarEntry implements FileHeader {
private final AsciiBytes name; private final AsciiBytes name;
private final AsciiBytes headerName;
private Certificate[] certificates; private Certificate[] certificates;
private CodeSigner[] codeSigners; private CodeSigner[] codeSigners;
...@@ -45,6 +47,7 @@ class JarEntry extends java.util.jar.JarEntry implements FileHeader { ...@@ -45,6 +47,7 @@ class JarEntry extends java.util.jar.JarEntry implements FileHeader {
JarEntry(JarFile jarFile, CentralDirectoryFileHeader header, AsciiBytes nameAlias) { JarEntry(JarFile jarFile, CentralDirectoryFileHeader header, AsciiBytes nameAlias) {
super((nameAlias != null) ? nameAlias.toString() : header.getName().toString()); super((nameAlias != null) ? nameAlias.toString() : header.getName().toString());
this.name = (nameAlias != null) ? nameAlias : header.getName(); this.name = (nameAlias != null) ? nameAlias : header.getName();
this.headerName = header.getName();
this.jarFile = jarFile; this.jarFile = jarFile;
this.localHeaderOffset = header.getLocalHeaderOffset(); this.localHeaderOffset = header.getLocalHeaderOffset();
setCompressedSize(header.getCompressedSize()); setCompressedSize(header.getCompressedSize());
...@@ -62,7 +65,7 @@ class JarEntry extends java.util.jar.JarEntry implements FileHeader { ...@@ -62,7 +65,7 @@ class JarEntry extends java.util.jar.JarEntry implements FileHeader {
@Override @Override
public boolean hasName(CharSequence name, char suffix) { public boolean hasName(CharSequence name, char suffix) {
return this.name.matches(name, suffix); return this.headerName.matches(name, suffix);
} }
/** /**
......
...@@ -305,8 +305,7 @@ class JarFileEntries implements CentralDirectoryVisitor, Iterable<JarEntry> { ...@@ -305,8 +305,7 @@ class JarFileEntries implements CentralDirectoryVisitor, Iterable<JarEntry> {
int index = getFirstIndex(hashCode); int index = getFirstIndex(hashCode);
while (index >= 0 && index < this.size && this.hashCodes[index] == hashCode) { while (index >= 0 && index < this.size && this.hashCodes[index] == hashCode) {
T entry = getEntry(index, type, cacheEntry, nameAlias); T entry = getEntry(index, type, cacheEntry, nameAlias);
if (entry.hasName((nameAlias != null) ? nameAlias.toString() : name, if (entry.hasName(name, suffix)) {
suffix)) {
return entry; return entry;
} }
index++; index++;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment