提交 389c810e 编写于 作者: R redestad

8068790: ZipEntry/JarEntry.setCreation/LastAccessTime(null) don't throw NPE as specified

Reviewed-by: coffeys, sherman
上级 2b07bf20
......@@ -180,8 +180,7 @@ class ZipEntry implements ZipConstants, Cloneable {
* @since 1.8
*/
public ZipEntry setLastModifiedTime(FileTime time) {
Objects.requireNonNull(name, "time");
this.mtime = time;
this.mtime = Objects.requireNonNull(time, "lastModifiedTime");
this.time = time.to(TimeUnit.MILLISECONDS);
return this;
}
......@@ -227,8 +226,7 @@ class ZipEntry implements ZipConstants, Cloneable {
* @since 1.8
*/
public ZipEntry setLastAccessTime(FileTime time) {
Objects.requireNonNull(name, "time");
this.atime = time;
this.atime = Objects.requireNonNull(time, "lastAccessTime");
return this;
}
......@@ -265,8 +263,7 @@ class ZipEntry implements ZipConstants, Cloneable {
* @since 1.8
*/
public ZipEntry setCreationTime(FileTime time) {
Objects.requireNonNull(name, "time");
this.ctime = time;
this.ctime = Objects.requireNonNull(time, "creationTime");
return this;
}
......
......@@ -23,7 +23,7 @@
/**
* @test
* @bug 4759491 6303183 7012868 8015666 8023713
* @bug 4759491 6303183 7012868 8015666 8023713 8068790
* @summary Test ZOS and ZIS timestamp in extra field correctly
*/
......@@ -69,6 +69,8 @@ public class TestExtraTime {
test(mtime, atime, ctime, tz, extra);
}
}
testNullHandling();
}
static void test(FileTime mtime, FileTime atime, FileTime ctime,
......@@ -154,4 +156,26 @@ public class TestExtraTime {
}
}
}
static void testNullHandling() {
ZipEntry ze = new ZipEntry("TestExtraTime.java");
try {
ze.setLastAccessTime(null);
throw new RuntimeException("setLastAccessTime(null) should throw NPE");
} catch (NullPointerException ignored) {
// pass
}
try {
ze.setCreationTime(null);
throw new RuntimeException("setCreationTime(null) should throw NPE");
} catch (NullPointerException ignored) {
// pass
}
try {
ze.setLastModifiedTime(null);
throw new RuntimeException("setLastModifiedTime(null) should throw NPE");
} catch (NullPointerException ignored) {
// pass
}
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册