Blob Blame History Raw
diff -up frysk-0.4/frysk-core/frysk/util/TaskStopUtil.java.taskstoperr frysk-0.4/frysk-core/frysk/util/TaskStopUtil.java
--- frysk-0.4/frysk-core/frysk/util/TaskStopUtil.java.taskstoperr	2010-03-29 19:28:34.000000000 -0400
+++ frysk-0.4/frysk-core/frysk/util/TaskStopUtil.java	2010-03-29 19:40:05.000000000 -0400
@@ -113,6 +113,11 @@ public class TaskStopUtil {
 	parser.setHeader(usage);
     }
     
+    /**
+     * The final result, assume ok, set to +ve if thigns go wrong.
+     */
+    private static int status = 0;
+
     public void execute () {
 	parser.parse(args);
 
@@ -121,6 +126,7 @@ public class TaskStopUtil {
 	    System.err.println("ERROR: No argument provided.");
 	    parser.printHelp();
 	}
+	System.exit(status);
     }
     
     private static class TasksBlocked implements ProcBlockObserver, Event {
@@ -136,7 +142,12 @@ public class TaskStopUtil {
 
 	public void allExistingTasksCompleted() {
 	    fine.log("allExistingTasksCompleted proc", proc);
-	    procEvent.executeLive(proc);
+	    try {
+		procEvent.executeLive(proc);
+	    } catch (frysk.UserException e) {
+		System.err.println("error: " + e.getMessage());
+		status = 1;
+	    }
 	    // Now ask for it to be detached.
 	    proc.requestAbandonAndRunEvent(this);
 	}