Merge branch '1.5.x'

This commit is contained in:
Andy Wilkinson 2018-02-23 17:15:23 +00:00
commit 85c7ed2746
3 changed files with 12 additions and 5 deletions

View File

@ -108,7 +108,7 @@ public class JarFile extends java.util.jar.JarFile {
private JarFile(RandomAccessDataFile rootFile, String pathFromRoot,
RandomAccessData data, JarEntryFilter filter, JarFileType type)
throws IOException {
throws IOException {
super(rootFile.getFile());
this.rootFile = rootFile;
this.pathFromRoot = pathFromRoot;
@ -289,7 +289,7 @@ public class JarFile extends java.util.jar.JarFile {
@Override
public int size() {
return (int) this.data.getSize();
return this.entries.getSize();
}
@Override

View File

@ -120,6 +120,10 @@ class JarFileEntries implements CentralDirectoryVisitor, Iterable<JarEntry> {
}
}
int getSize() {
return this.size;
}
private void sort(int left, int right) {
// Quick sort algorithm, uses hashCodes as the source but sorts all arrays
if (left < right) {

View File

@ -1,5 +1,5 @@
/*
* Copyright 2012-2017 the original author or authors.
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -31,6 +31,7 @@ import java.util.jar.JarEntry;
import java.util.jar.JarInputStream;
import java.util.jar.Manifest;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import org.junit.Before;
import org.junit.Rule;
@ -168,8 +169,10 @@ public class JarFileTests {
}
@Test
public void getSize() {
assertThat(this.jarFile.size()).isEqualTo((int) this.rootJarFile.length());
public void getSize() throws Exception {
try (ZipFile zip = new ZipFile(this.rootJarFile)) {
assertThat(this.jarFile.size()).isEqualTo(zip.size());
}
}
@Test