--- a/langtools/src/share/classes/com/sun/tools/javah/JavahTask.java Tue Mar 23 18:05:54 2010 -0700
+++ b/langtools/src/share/classes/com/sun/tools/javah/JavahTask.java Wed Mar 24 12:18:17 2010 -0700
@@ -318,12 +318,6 @@
int run(String[] args) {
try {
handleOptions(args);
- if (classes == null || classes.size() == 0) {
- if (help || version || fullVersion)
- return 0;
- else
- return 1;
- }
boolean ok = run();
return ok ? 0 : 1;
} catch (BadArgs e) {
@@ -355,7 +349,7 @@
fileManager = getDefaultFileManager(diagnosticListener, log);
Iterator<String> iter = args.iterator();
- boolean noArgs = !iter.hasNext();
+ noArgs = !iter.hasNext();
while (iter.hasNext()) {
String arg = iter.next();
@@ -416,9 +410,9 @@
Util util = new Util(log, diagnosticListener);
- if (help) {
+ if (noArgs || help) {
showHelp();
- return true;
+ return help; // treat noArgs as an error for purposes of exit code
}
if (version || fullVersion) {
@@ -636,6 +630,7 @@
String usercp;
List<String> classes;
boolean verbose;
+ boolean noArgs;
boolean help;
boolean trace;
boolean version;