--- 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++) {