Index: Execute.java
===================================================================
RCS file: /home/cvs/jakarta-ant/src/main/org/apache/tools/ant/taskdefs/Execute.java,v
retrieving revision 1.25
diff -u -r1.25 Execute.java
--- Execute.java	2001/11/15 08:02:40	1.25
+++ Execute.java	2001/11/29 03:19:32
@@ -419,10 +419,23 @@
         exitValue = value;
     }
 
+    /**
+     * query the exit value of the process.
+     * @return the exit value, 1 if the process was killed,
+     * or Project.INVALID if no exit value has been received
+     */
     public int getExitValue() {
         return exitValue;
     }
 
+    /**
+     * test for an untimely death of the process
+     * @return true iff a watchdog had to kill the process 
+     */
+    public boolean killedProcess() {
+        return watchdog!=null && watchdog.killedProcess();    
+    }
+    
     /**
      * Patch the current environment with the new values from the user.
      * @return the patched environment
Index: ExecTask.java
===================================================================
RCS file: /home/cvs/jakarta-ant/src/main/org/apache/tools/ant/taskdefs/ExecTask.java,v
retrieving revision 1.20
diff -u -r1.20 ExecTask.java
--- ExecTask.java	2001/11/27 23:45:49	1.20
+++ ExecTask.java	2001/11/29 03:19:33
@@ -287,6 +287,10 @@
         int err = -1; // assume the worst
 
         err = exe.execute();
+        //test for and handle a forced process death
+        if(exe.killedProcess()) {
+            log("Timeout: killed the sub-process",Project.MSG_WARN); 
+        }
         maybeSetResultPropertyValue(err);
         if (err != 0) {
             if (failOnError) {

