From 6fd0ddc8b843c2f0348fc51f680d465b89046fe7 Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Fri, 20 Aug 2004 10:56:52 +0000 Subject: [PATCH] When searching /usr/local/java/jdk1.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/bodewig/bin:/home/bodewig/dev/xml-forrest/build/dist/shbat//bin, look into user supplied environment first git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@276794 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/tools/ant/taskdefs/ExecTask.java | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/main/org/apache/tools/ant/taskdefs/ExecTask.java b/src/main/org/apache/tools/ant/taskdefs/ExecTask.java index f3d2a9086..9205e553d 100644 --- a/src/main/org/apache/tools/ant/taskdefs/ExecTask.java +++ b/src/main/org/apache/tools/ant/taskdefs/ExecTask.java @@ -391,16 +391,29 @@ public class ExecTask extends Task { // couldn't find it - must be on path if (searchPath) { + Path p = null; + String[] environment = env.getVariables(); + if (environment != null) { + for (int i = 0; i < environment.length; i++) { + if (isPath(environment[i])) { + p = new Path(getProject(), + environment[i].substring(5)); + break; + } + } + } + + if (p == null) { Vector env = Execute.getProcEnvironment(); Enumeration e = env.elements(); - Path p = null; while (e.hasMoreElements()) { String line = (String) e.nextElement(); - if (line.startsWith("PATH=") || line.startsWith("Path=")) { + if (isPath(line)) { p = new Path(getProject(), line.substring(5)); break; } } + } if (p != null) { String[] dirs = p.list(); @@ -647,4 +660,8 @@ public class ExecTask extends Task { protected void logFlush() { } + private boolean isPath(String line) { + return line.startsWith("PATH=") || line.startsWith("Path="); + } + }