Optimize JarEntry construction
This commit avoids calling the underlying ZipEntry.setExtra() method that is not very inline friendly in cases where there is no extra information to be set. See gh-16620
This commit is contained in:
committed by
Andy Wilkinson
parent
fd14cd0bd0
commit
f40b086ef5
@@ -153,6 +153,10 @@ final class CentralDirectoryFileHeader implements FileHeader {
|
||||
return this.extra;
|
||||
}
|
||||
|
||||
public boolean hasExtra() {
|
||||
return this.extra.length > 0;
|
||||
}
|
||||
|
||||
public AsciiBytes getComment() {
|
||||
return this.comment;
|
||||
}
|
||||
|
||||
@@ -56,7 +56,9 @@ class JarEntry extends java.util.jar.JarEntry implements FileHeader {
|
||||
setComment(header.getComment().toString());
|
||||
setSize(header.getSize());
|
||||
setTime(header.getTime());
|
||||
setExtra(header.getExtra());
|
||||
if (header.hasExtra()) {
|
||||
setExtra(header.getExtra());
|
||||
}
|
||||
}
|
||||
|
||||
AsciiBytes getAsciiBytesName() {
|
||||
|
||||
Reference in New Issue
Block a user