langtools/src/share/classes/com/sun/tools/javah/JavahTask.java
changeset 5217 e20e20050405
parent 5005 b9ecef751d2c
child 5520 86e4b9a9da40
--- 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;