< prev index next >

hotspot/src/share/vm/prims/jvmtiRedefineClasses.cpp

Print this page
rev 7371 : 8079644: memory stomping error with ResourceManagement and TestAgentStress.java
Summary: the cached class file structure must be deallocated instead of the cached class file bytes
Reviewed-by: coleenp, sla

*** 3978,3989 **** } else if (scratch_class->get_cached_class_file_bytes() != the_class->get_cached_class_file_bytes()) { // The same class can be present twice in the scratch classes list or there // are multiple concurrent RetransformClasses calls on different threads. ! // In such cases we have to deallocate scratch_class cached_class_file_bytes. ! os::free(scratch_class->get_cached_class_file_bytes()); } // NULL out in scratch class to not delete twice. The class to be redefined // always owns these bytes. scratch_class->set_cached_class_file(NULL); --- 3978,3989 ---- } else if (scratch_class->get_cached_class_file_bytes() != the_class->get_cached_class_file_bytes()) { // The same class can be present twice in the scratch classes list or there // are multiple concurrent RetransformClasses calls on different threads. ! // In such cases we have to deallocate scratch_class cached_class_file. ! os::free(scratch_class->get_cached_class_file()); } // NULL out in scratch class to not delete twice. The class to be redefined // always owns these bytes. scratch_class->set_cached_class_file(NULL);
< prev index next >