Index: CallTarget.java
===================================================================
RCS file: /home/cvspublic/jakarta-ant/src/main/org/apache/tools/ant/taskdefs/CallTarget.java,v
retrieving revision 1.3
diff -u -r1.3 CallTarget.java
--- CallTarget.java	2000/07/24 14:54:49	1.3
+++ CallTarget.java	2000/09/02 10:49:30
@@ -80,15 +80,15 @@
  */
 public class CallTarget extends Task {
 
-    private Ant delegate;
+    private Ant calledTarget;
     private String subTarget;
 
     public void init() {
-        delegate = (Ant) project.createTask("ant");
-        delegate.setOwningTarget(target);
-        delegate.setTaskName(getTaskName());
-        delegate.setLocation(location);
-        delegate.init();
+        calledTarget = (Ant) project.createTask("ant");
+        calledTarget.setOwningTarget(target);
+        calledTarget.setTaskName(getTaskName());
+        calledTarget.setLocation(location);
+        calledTarget.init();
     }
 
     public void execute() {
@@ -97,14 +97,21 @@
                                      location);
         }
         
-        delegate.setDir(project.getBaseDir());
-        delegate.setAntfile(project.getProperty("ant.file"));
-        delegate.setTarget(subTarget);
-        delegate.execute();
+        calledTarget.setDir(project.getBaseDir());
+        String antFile = project.getProperty("ant.file");
+        /* If full-qualified path is included in 'ant.file' remove it,
+           since we just set this path as the base-directory */
+        if (antFile.startsWith(project.getBaseDir().getAbsolutePath())) { 
+            int pathLength = project.getBaseDir().getAbsolutePath().length();
+            antFile = antFile.substring(pathLength + 1);
+        }
+        calledTarget.setAntfile(antFile);
+        calledTarget.setTarget(subTarget);
+        calledTarget.execute();
     }
 
     public Property createParam() {
-        return delegate.createProperty();
+        return calledTarget.createProperty();
     }
 
     public void setTarget(String target) {
