--- a/hotspot/src/share/vm/prims/jvmtiRedefineClasses.cpp Mon Apr 11 21:42:55 2016 +0300
+++ b/hotspot/src/share/vm/prims/jvmtiRedefineClasses.cpp Wed Apr 06 18:51:03 2016 +0300
@@ -1447,12 +1447,12 @@
ResourceMark rm(THREAD);
_index_map_count = 0;
- _index_map_p = new intArray(scratch_cp->length(), -1);
+ _index_map_p = new intArray(scratch_cp->length(), scratch_cp->length(), -1);
_operands_cur_length = ConstantPool::operand_array_length(old_cp->operands());
_operands_index_map_count = 0;
- _operands_index_map_p = new intArray(
- ConstantPool::operand_array_length(scratch_cp->operands()), -1);
+ int operands_index_map_len = ConstantPool::operand_array_length(scratch_cp->operands());
+ _operands_index_map_p = new intArray(operands_index_map_len, operands_index_map_len, -1);
// reference to the cp holder is needed for copy_operands()
merge_cp->set_pool_holder(scratch_class());