diff -r abd5656ec01e -r e8139278d5d7 hotspot/src/share/vm/oops/instanceKlass.cpp --- a/hotspot/src/share/vm/oops/instanceKlass.cpp Fri Aug 21 20:39:41 2009 -0700 +++ b/hotspot/src/share/vm/oops/instanceKlass.cpp Fri Aug 28 12:32:06 2009 -0600 @@ -1085,6 +1085,7 @@ if (indices == NULL || (length = (size_t)indices[0]) <= idnum) { size_t size = MAX2(idnum+1, (size_t)idnum_allocated_count()); int* new_indices = NEW_C_HEAP_ARRAY(int, size+1); + new_indices[0] =(int)size; // array size held in the first element // Copy the existing entries, if any size_t i; for (i = 0; i < length; i++) {