# HG changeset patch # User zgu # Date 1285862708 14400 # Node ID a32b2fc663218aff42855ec01b88f70893f1a647 # Parent 5a4b9e39ce51296bf9bd9000acc823c87acc2e8a 6988363: Rebrand vm vendor property settings (jdk7 only) Summary: Vendor properties should be initialized after JDK version is determined. Reviewed-by: kamg, ohair, dcubed, dholmes diff -r 5a4b9e39ce51 -r a32b2fc66321 hotspot/src/share/vm/runtime/arguments.cpp --- a/hotspot/src/share/vm/runtime/arguments.cpp Fri Sep 24 00:52:04 2010 -0700 +++ b/hotspot/src/share/vm/runtime/arguments.cpp Thu Sep 30 12:05:08 2010 -0400 @@ -119,11 +119,8 @@ PropertyList_add(&_system_properties, new SystemProperty("java.vm.specification.version", "1.0", false)); PropertyList_add(&_system_properties, new SystemProperty("java.vm.specification.name", "Java Virtual Machine Specification", false)); - PropertyList_add(&_system_properties, new SystemProperty("java.vm.specification.vendor", - JDK_Version::is_gte_jdk17x_version() ? "Oracle Corporation" : "Sun Microsystems Inc.", false)); PropertyList_add(&_system_properties, new SystemProperty("java.vm.version", VM_Version::vm_release(), false)); PropertyList_add(&_system_properties, new SystemProperty("java.vm.name", VM_Version::vm_name(), false)); - PropertyList_add(&_system_properties, new SystemProperty("java.vm.vendor", VM_Version::vm_vendor(), false)); PropertyList_add(&_system_properties, new SystemProperty("java.vm.info", VM_Version::vm_info_string(), true)); // following are JVMTI agent writeable properties. @@ -151,6 +148,14 @@ os::init_system_properties_values(); } + + // Update/Initialize System properties after JDK version number is known +void Arguments::init_version_specific_system_properties() { + PropertyList_add(&_system_properties, new SystemProperty("java.vm.specification.vendor", + JDK_Version::is_gte_jdk17x_version() ? "Oracle Corporation" : "Sun Microsystems Inc.", false)); + PropertyList_add(&_system_properties, new SystemProperty("java.vm.vendor", VM_Version::vm_vendor(), false)); +} + /** * Provide a slightly more user-friendly way of eliminating -XX flags. * When a flag is eliminated, it can be added to this list in order to diff -r 5a4b9e39ce51 -r a32b2fc66321 hotspot/src/share/vm/runtime/arguments.hpp --- a/hotspot/src/share/vm/runtime/arguments.hpp Fri Sep 24 00:52:04 2010 -0700 +++ b/hotspot/src/share/vm/runtime/arguments.hpp Thu Sep 30 12:05:08 2010 -0400 @@ -484,6 +484,9 @@ // System properties static void init_system_properties(); + // Update/Initialize System properties after JDK version number is known + static void init_version_specific_system_properties(); + // Property List manipulation static void PropertyList_add(SystemProperty** plist, SystemProperty *element); static void PropertyList_add(SystemProperty** plist, const char* k, char* v); diff -r 5a4b9e39ce51 -r a32b2fc66321 hotspot/src/share/vm/runtime/thread.cpp --- a/hotspot/src/share/vm/runtime/thread.cpp Fri Sep 24 00:52:04 2010 -0700 +++ b/hotspot/src/share/vm/runtime/thread.cpp Thu Sep 30 12:05:08 2010 -0400 @@ -2898,6 +2898,9 @@ // So that JDK version can be used as a discrimintor when parsing arguments JDK_Version_init(); + // Update/Initialize System properties after JDK version number is known + Arguments::init_version_specific_system_properties(); + // Parse arguments jint parse_result = Arguments::parse(args); if (parse_result != JNI_OK) return parse_result;