comparison src/share/vm/oops/objArrayKlass.cpp @ 876:1413494da700

6850957: Honor -XX:OnOutOfMemoryError when array size exceeds VM limit Summary: call report_java_out_of_memory("Requested array size exceeds VM limit") Reviewed-by: tbell, dholmes, alanb, ysr Contributed-by: jeremymanson@google.com
author martin
date Mon, 29 Jun 2009 14:42:12 -0700
parents c89f86385056
children 494244ae0171
comparison
equal deleted inserted replaced
875:6a93908f268f 876:1413494da700
37 KlassHandle h_k(THREAD, as_klassOop()); 37 KlassHandle h_k(THREAD, as_klassOop());
38 objArrayOop a = (objArrayOop)CollectedHeap::array_allocate(h_k, size, length, CHECK_NULL); 38 objArrayOop a = (objArrayOop)CollectedHeap::array_allocate(h_k, size, length, CHECK_NULL);
39 assert(a->is_parsable(), "Can't publish unless parsable"); 39 assert(a->is_parsable(), "Can't publish unless parsable");
40 return a; 40 return a;
41 } else { 41 } else {
42 report_java_out_of_memory("Requested array size exceeds VM limit");
42 THROW_OOP_0(Universe::out_of_memory_error_array_size()); 43 THROW_OOP_0(Universe::out_of_memory_error_array_size());
43 } 44 }
44 } else { 45 } else {
45 THROW_0(vmSymbols::java_lang_NegativeArraySizeException()); 46 THROW_0(vmSymbols::java_lang_NegativeArraySizeException());
46 } 47 }