From ee5f6e156de0fd3d78adf60951866f43c492725b Mon Sep 17 00:00:00 2001 From: Severin Gehwolf Date: Tue, 14 Feb 2023 09:27:36 +0000 Subject: [PATCH] 8302337: JDK crashes if lib/modules contains non-zero byte containing ATTRIBUTE_END Reviewed-by: stuefe, jlaskey, alanb --- src/java.base/share/native/libjimage/imageFile.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/java.base/share/native/libjimage/imageFile.cpp b/src/java.base/share/native/libjimage/imageFile.cpp index 0f45a023eed..72a69ef436a 100644 --- a/src/java.base/share/native/libjimage/imageFile.cpp +++ b/src/java.base/share/native/libjimage/imageFile.cpp @@ -130,6 +130,9 @@ void ImageLocation::set_data(u1* data) { // Extract kind from header byte. u1 kind = attribute_kind(byte); assert(kind < ATTRIBUTE_COUNT && "invalid image location attribute"); + if (kind == ATTRIBUTE_END) { + break; + } // Extract length of data (in bytes). u1 n = attribute_length(byte); // Read value (most significant first.)