< prev index next >
src/hotspot/share/oops/objArrayKlass.cpp
Print this page
rev 50282 : 8203881: Print errornous size in NegativeArraySizeException
@@ -179,11 +179,14 @@
report_java_out_of_memory("Requested array size exceeds VM limit");
JvmtiExport::post_array_size_exhausted();
THROW_OOP_0(Universe::out_of_memory_error_array_size());
}
} else {
- THROW_0(vmSymbols::java_lang_NegativeArraySizeException());
+ ResourceMark rm(THREAD);
+ stringStream ss;
+ ss.print("%d", length);
+ THROW_MSG_0(vmSymbols::java_lang_NegativeArraySizeException(), ss.as_string());
}
}
static int multi_alloc_counter = 0;
@@ -207,11 +210,14 @@
// allocated, however the lower dimension values must be checked
// for illegal values.
for (int i = 0; i < rank - 1; ++i) {
sizes += 1;
if (*sizes < 0) {
- THROW_0(vmSymbols::java_lang_NegativeArraySizeException());
+ ResourceMark rm(THREAD);
+ stringStream ss;
+ ss.print("%d", *sizes);
+ THROW_MSG_0(vmSymbols::java_lang_NegativeArraySizeException(), ss.as_string());
}
}
}
}
return h_array();
< prev index next >