--- a/jdk/src/share/bin/java.c Sun Jan 01 09:24:00 2012 +0000
+++ b/jdk/src/share/bin/java.c Tue Jan 03 08:27:37 2012 -0800
@@ -382,6 +382,11 @@
exit(1);
}
+ if (showSettings != NULL) {
+ ShowSettings(env, showSettings);
+ CHECK_EXCEPTION_LEAVE(1);
+ }
+
if (printVersion || showVersion) {
PrintJavaVersion(env, showVersion);
CHECK_EXCEPTION_LEAVE(0);
@@ -390,10 +395,6 @@
}
}
- if (showSettings != NULL) {
- ShowSettings(env, showSettings);
- CHECK_EXCEPTION_LEAVE(1);
- }
/* If the user specified neither a class name nor a JAR file */
if (printXUsage || printUsage || what == 0 || mode == LM_UNKNOWN) {
PrintUsage(env, printXUsage);
--- a/jdk/test/tools/launcher/Settings.java Sun Jan 01 09:24:00 2012 +0000
+++ b/jdk/test/tools/launcher/Settings.java Tue Jan 03 08:27:37 2012 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,7 @@
/*
* @test
- * @bug 6994753
+ * @bug 6994753 7123582
* @summary tests -XshowSettings options
* @compile -XDignore.symbol.file Settings.java TestHelper.java
* @run main Settings
@@ -129,6 +129,17 @@
checkNoContains(tr, LOCALE_SETTINGS);
checkContains(tr, "Unrecognized option: -XshowSettingsBadOption");
}
+
+ static void runTest7123582() throws IOException {
+ TestHelper.TestResult tr = null;
+ tr = TestHelper.doExec(TestHelper.javaCmd, "-XshowSettings", "-version");
+ if (!tr.isOK()) {
+ System.out.println(tr.status);
+ throw new RuntimeException("test fails");
+ }
+ containsAllOptions(tr);
+ }
+
public static void main(String... args) {
try {
runTestOptionAll();
@@ -137,6 +148,7 @@
runTestOptionProperty();
runTestOptionLocale();
runTestBadOptions();
+ runTest7123582();
} catch (IOException ioe) {
throw new RuntimeException(ioe);
}