hotspot/src/share/vm/runtime/globals.cpp
changeset 1402 ccb40ce62b79
parent 670 ddf3e9583f2f
child 1404 4a969f79e3e6
--- a/hotspot/src/share/vm/runtime/globals.cpp	Wed Sep 24 15:56:36 2008 -0700
+++ b/hotspot/src/share/vm/runtime/globals.cpp	Thu Sep 25 12:50:51 2008 -0700
@@ -355,8 +355,11 @@
   if (result == NULL) return false;
   if (!result->is_ccstr()) return false;
   ccstr old_value = result->get_ccstr();
-  char* new_value = NEW_C_HEAP_ARRAY(char, strlen(*value)+1);
-  strcpy(new_value, *value);
+  char* new_value = NULL;
+  if (*value != NULL) {
+    new_value = NEW_C_HEAP_ARRAY(char, strlen(*value)+1);
+    strcpy(new_value, *value);
+  }
   result->set_ccstr(new_value);
   if (result->origin == DEFAULT && old_value != NULL) {
     // Prior value is NOT heap allocated, but was a literal constant.