Tue, 01 Oct 2013 08:54:05 -0400
8022187: Missing ResourceMark crash when assertion using FormatBufferResource fails
Summary: Uses stack for the format buffer instead of resource memory
Reviewed-by: kvn, coleenp
src/share/vm/utilities/array.hpp | file | annotate | diff | comparison | revisions |
1.1 --- a/src/share/vm/utilities/array.hpp Wed Sep 25 17:47:51 2013 +0200 1.2 +++ b/src/share/vm/utilities/array.hpp Tue Oct 01 08:54:05 2013 -0400 1.3 @@ -353,9 +353,9 @@ 1.4 // sort the array. 1.5 bool contains(const T& x) const { return index_of(x) >= 0; } 1.6 1.7 - T at(int i) const { assert(i >= 0 && i< _length, err_msg_res("oob: 0 <= %d < %d", i, _length)); return _data[i]; } 1.8 - void at_put(const int i, const T& x) { assert(i >= 0 && i< _length, err_msg_res("oob: 0 <= %d < %d", i, _length)); _data[i] = x; } 1.9 - T* adr_at(const int i) { assert(i >= 0 && i< _length, err_msg_res("oob: 0 <= %d < %d", i, _length)); return &_data[i]; } 1.10 + T at(int i) const { assert(i >= 0 && i< _length, err_msg("oob: 0 <= %d < %d", i, _length)); return _data[i]; } 1.11 + void at_put(const int i, const T& x) { assert(i >= 0 && i< _length, err_msg("oob: 0 <= %d < %d", i, _length)); _data[i] = x; } 1.12 + T* adr_at(const int i) { assert(i >= 0 && i< _length, err_msg("oob: 0 <= %d < %d", i, _length)); return &_data[i]; } 1.13 int find(const T& x) { return index_of(x); } 1.14 1.15 T at_acquire(const int which) { return OrderAccess::load_acquire(adr_at(which)); }