src/share/vm/oops/method.cpp

Print this page

        

*** 1161,1170 **** --- 1161,1171 ---- newm->set_constMethod(newcm); newm->constMethod()->set_code_size(new_code_length); newm->constMethod()->set_constMethod_size(new_const_method_size); newm->set_method_size(new_method_size); assert(newm->code_size() == new_code_length, "check"); + assert(newm->method_parameters_length() == method_parameters_len, "check"); assert(newm->checked_exceptions_length() == checked_exceptions_len, "check"); assert(newm->exception_table_length() == exception_table_len, "check"); assert(newm->localvariable_table_length() == localvariable_len, "check"); // Copy new byte codes memcpy(newm->code_base(), new_code, new_code_length);
*** 1172,1181 **** --- 1173,1188 ---- if (new_compressed_linenumber_size > 0) { memcpy(newm->compressed_linenumber_table(), new_compressed_linenumber_table, new_compressed_linenumber_size); } + // Copy method_parameters + if (method_parameters_len > 0) { + memcpy(newm->method_parameters_start(), + m->method_parameters_start(), + method_parameters_len * sizeof(MethodParametersElement)); + } // Copy checked_exceptions if (checked_exceptions_len > 0) { memcpy(newm->checked_exceptions_start(), m->checked_exceptions_start(), checked_exceptions_len * sizeof(CheckedExceptionElement));