equal
deleted
inserted
replaced
1359 NULL_CHECK(ob_h, JVMTI_ERROR_INVALID_OBJECT); |
1359 NULL_CHECK(ob_h, JVMTI_ERROR_INVALID_OBJECT); |
1360 Klass* ob_k = ob_h()->klass(); |
1360 Klass* ob_k = ob_h()->klass(); |
1361 NULL_CHECK(ob_k, JVMTI_ERROR_INVALID_OBJECT); |
1361 NULL_CHECK(ob_k, JVMTI_ERROR_INVALID_OBJECT); |
1362 |
1362 |
1363 // Method return type signature. |
1363 // Method return type signature. |
1364 char* ty_sign = 1 + strchr(signature->as_C_string(), ')'); |
1364 char* ty_sign = 1 + strchr(signature->as_C_string(), JVM_SIGNATURE_ENDFUNC); |
1365 |
1365 |
1366 if (!VM_GetOrSetLocal::is_assignable(ty_sign, ob_k, current_thread)) { |
1366 if (!VM_GetOrSetLocal::is_assignable(ty_sign, ob_k, current_thread)) { |
1367 return JVMTI_ERROR_TYPE_MISMATCH; |
1367 return JVMTI_ERROR_TYPE_MISMATCH; |
1368 } |
1368 } |
1369 *ret_ob_h = ob_h; |
1369 *ret_ob_h = ob_h; |