comparison src/share/vm/prims/jvmtiEnv.cpp @ 17946:997fd9660dd5

8027230: Overflow in java.lang.instrument.Instrumentation.getObjectSize() method Reviewed-by: dholmes, sspitsyn
author allwin
date Thu, 22 May 2014 09:12:29 +0200
parents b8860472c377
children 52b4284cb496 887a7cedb892
comparison
equal deleted inserted replaced
17945:15766b73dc1d 17946:997fd9660dd5
305 305
306 if (mirror->klass() == SystemDictionary::Class_klass() && 306 if (mirror->klass() == SystemDictionary::Class_klass() &&
307 !java_lang_Class::is_primitive(mirror)) { 307 !java_lang_Class::is_primitive(mirror)) {
308 Klass* k = java_lang_Class::as_Klass(mirror); 308 Klass* k = java_lang_Class::as_Klass(mirror);
309 assert(k != NULL, "class for non-primitive mirror must exist"); 309 assert(k != NULL, "class for non-primitive mirror must exist");
310 *size_ptr = k->size() * wordSize; 310 *size_ptr = (jlong)k->size() * wordSize;
311 } else { 311 } else {
312 *size_ptr = mirror->size() * wordSize; 312 *size_ptr = (jlong)mirror->size() * wordSize;
313 } 313 }
314 return JVMTI_ERROR_NONE; 314 return JVMTI_ERROR_NONE;
315 } /* end GetObjectSize */ 315 } /* end GetObjectSize */
316 316
317 // 317 //