From 72b9aafd5a0dfb379a979f554fa99a767eef3e50 Mon Sep 17 00:00:00 2001 From: Ioi Lam Date: Wed, 28 May 2025 02:39:59 +0000 Subject: [PATCH] 8357917: Assert in MetaspaceShared::preload_and_dump() when printing exception Reviewed-by: kvn, jrose --- src/hotspot/share/cds/metaspaceShared.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/hotspot/share/cds/metaspaceShared.cpp b/src/hotspot/share/cds/metaspaceShared.cpp index be7fa383263..d8281d1f9a4 100644 --- a/src/hotspot/share/cds/metaspaceShared.cpp +++ b/src/hotspot/share/cds/metaspaceShared.cpp @@ -799,8 +799,9 @@ void MetaspaceShared::preload_and_dump(TRAPS) { "%zuM", MaxHeapSize/M); MetaspaceShared::writing_error(); } else { + oop message = java_lang_Throwable::message(PENDING_EXCEPTION); aot_log_error(aot)("%s: %s", PENDING_EXCEPTION->klass()->external_name(), - java_lang_String::as_utf8_string(java_lang_Throwable::message(PENDING_EXCEPTION))); + message == nullptr ? "(null)" : java_lang_String::as_utf8_string(message)); MetaspaceShared::writing_error(err_msg("Unexpected exception, use -Xlog:aot%s,exceptions=trace for detail", CDSConfig::new_aot_flags_used() ? "" : ",cds")); }