6980262: Memory leak when exception is thrown in static initializer
authorkamg
Fri, 27 Aug 2010 15:05:28 -0400
changeset 6421 7c02a5af38e7
parent 6420 a4205fed5b18
child 6422 8f067c3a4440
6980262: Memory leak when exception is thrown in static initializer Summary: Use resource memory instead of c-heap for the exception message Reviewed-by: phh, jmasa
hotspot/src/share/vm/oops/instanceKlass.cpp
--- a/hotspot/src/share/vm/oops/instanceKlass.cpp	Wed Aug 25 21:29:05 2010 -0400
+++ b/hotspot/src/share/vm/oops/instanceKlass.cpp	Fri Aug 27 15:05:28 2010 -0400
@@ -382,7 +382,7 @@
       const char* desc = "Could not initialize class ";
       const char* className = this_oop->external_name();
       size_t msglen = strlen(desc) + strlen(className) + 1;
-      char* message = NEW_C_HEAP_ARRAY(char, msglen);
+      char* message = NEW_RESOURCE_ARRAY(char, msglen);
       if (NULL == message) {
         // Out of memory: can't create detailed error message
         THROW_MSG(vmSymbols::java_lang_NoClassDefFoundError(), className);