< prev index next >
src/java.base/share/classes/jdk/internal/jimage/ImageHeader.java
Print this page
rev 14631 : 8156209: Add argument checks to BasicImageReader calls
Reviewed-by: sundar
@@ -25,10 +25,11 @@
package jdk.internal.jimage;
import java.nio.ByteBuffer;
import java.nio.IntBuffer;
+import java.util.Objects;
/**
* @implNote This class needs to maintain JDK 8 source compatibility.
*
* It is used internally in the JDK to implement jimage/jrtfs access,
@@ -73,10 +74,12 @@
public static int getHeaderSize() {
return HEADER_SLOTS * 4;
}
static ImageHeader readFrom(IntBuffer buffer) {
+ Objects.requireNonNull(buffer);
+
if (buffer.capacity() != HEADER_SLOTS) {
throw new InternalError("jimage header not the correct size");
}
int magic = buffer.get(0);
@@ -92,15 +95,17 @@
return new ImageHeader(magic, majorVersion, minorVersion, flags,
resourceCount, tableLength, locationsSize, stringsSize);
}
public void writeTo(ImageStream stream) {
+ Objects.requireNonNull(stream);
stream.ensure(getHeaderSize());
writeTo(stream.getBuffer());
}
public void writeTo(ByteBuffer buffer) {
+ Objects.requireNonNull(buffer);
buffer.putInt(magic);
buffer.putInt(majorVersion << 16 | minorVersion);
buffer.putInt(flags);
buffer.putInt(resourceCount);
buffer.putInt(tableLength);
< prev index next >