--- old/src/hotspot/share/oops/klass.cpp 2018-09-26 14:03:45.000000000 +0200 +++ new/src/hotspot/share/oops/klass.cpp 2018-09-26 14:03:44.000000000 +0200 @@ -610,6 +610,18 @@ return NULL; } +void Klass::check_array_allocation_length(int length, int max_length, TRAPS) { + if (length > max_length) { + if (!THREAD->in_retryable_allocation()) { + report_java_out_of_memory("Requested array size exceeds VM limit"); + JvmtiExport::post_array_size_exhausted(); + THROW_OOP(Universe::out_of_memory_error_array_size()); + } else { + THROW_OOP(Universe::out_of_memory_error_retry()); + } + } +} + oop Klass::class_loader() const { return class_loader_data()->class_loader(); } // In product mode, this function doesn't have virtual function calls so