Tagging version 1.8.0 of Ant
git-svn-id: https://svn.apache.org/repos/asf/ant/core/tags/ANT_180@905481 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/ReleaseInstructions b/ReleaseInstructions
index a47be09..f3a50f4 100644
--- a/ReleaseInstructions
+++ b/ReleaseInstructions
@@ -105,6 +105,9 @@
on the branch. It is important that this be a clean build. Label this with
a tag ANT_170_B1.
+ The file release.sh gives an idea of how to do this build process,
+ currently in two steps, one with JDK 1.4 and one with JDK 1.5
+
C:\dev\asf\ant-core>
svn copy https://svn.apache.org/repos/asf/ant/core/trunk \
https://svn.apache.org/repos/asf/ant/core/tags/ANT_170_B1 \
diff --git a/WHATSNEW b/WHATSNEW
index ad6a054..7f4110d 100644
--- a/WHATSNEW
+++ b/WHATSNEW
@@ -21,6 +21,9 @@
Fixed bugs:
-----------
+ * stack traces were not reported at all by <junit/>
+ when filtertrace="on", which is the default.
+
* ant.bat can now also process the -noclasspath switch when it is
the first switch on a command line.
Bugzilla Report 48186.
diff --git a/build.xml b/build.xml
index 53a000f..949567c 100644
--- a/build.xml
+++ b/build.xml
@@ -375,9 +375,6 @@
<available property="apache.resolver.present"
classname="org.apache.xml.resolver.tools.CatalogResolver"
classpathref="classpath"/>
- <available property="xalan2.present"
- classname="org.apache.xalan.transformer.TransformerImpl"
- classpathref="classpath"/>
<available property="recent.xalan2.present"
classname="org.apache.xalan.trace.TraceListenerEx3"
classpathref="classpath"/>
diff --git a/docs/antnews.html b/docs/antnews.html
index aac148c..fc34ccf 100644
--- a/docs/antnews.html
+++ b/docs/antnews.html
@@ -208,7 +208,7 @@
<a name="Ant1.8.0"></a>
Ant1.8.0
</h3>
- <h3>Februrary 5th, 2010 - Ant 1.8.0 Released</h3>
+ <h3>Februrary 8th, 2010 - Ant 1.8.0 Released</h3>
<p>Apache Ant 1.8.0 is now available for download as source or binary (with and without
dependencies) from
<a href="http://ant.apache.org/bindownload.cgi">http://ant.apache.org/bindownload.cgi</a>.</p>
diff --git a/docs/bindownload.html b/docs/bindownload.html
index 0b0afa6..7689955 100644
--- a/docs/bindownload.html
+++ b/docs/bindownload.html
@@ -248,7 +248,7 @@
<a href="[preferred]/ant/README.html">release notes</a>.</p>
<div class="warning">
<div class="label">Note</div>
-<div class="content">Ant 1.8.0 was released on 5-Feb-2010 and
+<div class="content">Ant 1.8.0 was released on 8-Feb-2010 and
may not be available on all mirrors for a few days.</div>
</div>
<br />
diff --git a/docs/faq.html b/docs/faq.html
index d962e3a..0288b5b 100644
--- a/docs/faq.html
+++ b/docs/faq.html
@@ -748,7 +748,7 @@
</td>
<td colspan="1" rowspan="1"
valign="top" align="left">
- 5 February 2010
+ 8 February 2010
</td>
</tr>
</table>
diff --git a/docs/index.html b/docs/index.html
index 2ab9b94..8debd95 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -204,7 +204,7 @@
<a name="Ant 1.8.0"></a>
Ant 1.8.0
</h3>
- <h3>February 5, 2010 - Ant 1.8.0 Available</h3>
+ <h3>February 8, 2010 - Ant 1.8.0 Available</h3>
<p>
Apache Ant 1.8.0 is now available for
<a href="http://ant.apache.org/bindownload.cgi">download</a>
diff --git a/docs/manual/install.html b/docs/manual/install.html
index 5e4c135..2f48ed2 100644
--- a/docs/manual/install.html
+++ b/docs/manual/install.html
@@ -920,8 +920,8 @@
<tr>
<td>JAI - Java Advanced Imaging</td>
<td>image task</td>
- <td><a href="http://java.sun.com/products/java-media/jai/"
- target="_top">http://java.sun.com/products/java-media/jai/</a></td>
+ <td><a href="https://jai.dev.java.net/"
+ target="_top">https://jai.dev.java.net/</a></td>
</tr>
<tr>
<td>Starteam SDK</td>
diff --git a/docs/srcdownload.html b/docs/srcdownload.html
index bcbe5bd..8aa3fc2 100644
--- a/docs/srcdownload.html
+++ b/docs/srcdownload.html
@@ -246,7 +246,7 @@
<a href="[preferred]/ant/README.html">release notes</a>.</p>
<div class="warning">
<div class="label">Note</div>
-<div class="content">Ant 1.8.0 was released on 5-Feb-2010 and
+<div class="content">Ant 1.8.0 was released on 8-Feb-2010 and
may not be available on all mirrors for a few days.</div>
</div>
<br />
diff --git a/release.sh b/release.sh
new file mode 100755
index 0000000..e204c97
--- /dev/null
+++ b/release.sh
@@ -0,0 +1,36 @@
+#!/bin/sh
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#######################################################################
+# this is a first attempt to document the build of the distribution
+# paths are hard-coded and obviously this is for a Cygwin/Windows combo
+#######################################################################
+rm -rf bootstrap build dist distribution
+unset ANT_HOME
+export JAVA_HOME=/cygdrive/c/j2sdk1.4.2_19
+export PATH=$JAVA_HOME/bin:$PATH
+echo ANT_HOME=$ANT_HOME
+echo JAVA_HOME=$JAVA_HOME
+which java
+echo running first build under JDK 1.4
+./build.sh
+export JAVA_HOME="/cygdrive/c/Program Files/Java/jdk1.5.0_22"
+export PATH=$JAVA_HOME/bin:$PATH
+echo ANT_HOME=$ANT_HOME
+echo JAVA_HOME=$JAVA_HOME
+which java
+echo running second build under JDK 1.5 including tests
+./build.sh distribution run-tests
+
diff --git a/src/main/org/apache/tools/ant/taskdefs/Execute.java b/src/main/org/apache/tools/ant/taskdefs/Execute.java
index 09204ee..74f98ca 100644
--- a/src/main/org/apache/tools/ant/taskdefs/Execute.java
+++ b/src/main/org/apache/tools/ant/taskdefs/Execute.java
@@ -1203,9 +1203,7 @@
out.write(cmd[i]);
}
} finally {
- if (out != null) {
- out.close();
- }
+ FileUtils.close(out);
}
return script;
}
diff --git a/src/main/org/apache/tools/ant/taskdefs/KeySubst.java b/src/main/org/apache/tools/ant/taskdefs/KeySubst.java
index 97f3dbb..9067191 100644
--- a/src/main/org/apache/tools/ant/taskdefs/KeySubst.java
+++ b/src/main/org/apache/tools/ant/taskdefs/KeySubst.java
@@ -28,6 +28,7 @@
import java.util.StringTokenizer;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;
+import org.apache.tools.ant.util.FileUtils;
/**
* Keyword substitution. Input file is written to output file.
@@ -80,20 +81,8 @@
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
- if (bw != null) {
- try {
- bw.close();
- } catch (IOException e) {
- // ignore
- }
- }
- if (br != null) {
- try {
- br.close();
- } catch (IOException e) {
- // ignore
- }
- }
+ FileUtils.close(bw);
+ FileUtils.close(br);
}
}
diff --git a/src/main/org/apache/tools/ant/taskdefs/email/Message.java b/src/main/org/apache/tools/ant/taskdefs/email/Message.java
index ee905f4..75b033a 100644
--- a/src/main/org/apache/tools/ant/taskdefs/email/Message.java
+++ b/src/main/org/apache/tools/ant/taskdefs/email/Message.java
@@ -26,6 +26,7 @@
import java.io.PrintStream;
import org.apache.tools.ant.ProjectComponent;
+import org.apache.tools.ant.util.FileUtils;
/**
* Class representing an email message.
@@ -115,28 +116,33 @@
throws IOException {
// We need character encoding aware printing here.
// So, using BufferedWriter over OutputStreamWriter instead of PrintStream
- BufferedWriter out
- = charset != null ? new BufferedWriter(new OutputStreamWriter(ps, charset))
- : new BufferedWriter(new OutputStreamWriter(ps));
- if (messageSource != null) {
- // Read message from a file
- FileReader freader = new FileReader(messageSource);
+ BufferedWriter out = null;
+ try {
+ out
+ = charset != null ? new BufferedWriter(new OutputStreamWriter(ps, charset))
+ : new BufferedWriter(new OutputStreamWriter(ps));
+ if (messageSource != null) {
+ // Read message from a file
+ FileReader freader = new FileReader(messageSource);
- try {
- BufferedReader in = new BufferedReader(freader);
- String line = null;
- while ((line = in.readLine()) != null) {
- out.write(getProject().replaceProperties(line));
- out.newLine();
+ try {
+ BufferedReader in = new BufferedReader(freader);
+ String line = null;
+ while ((line = in.readLine()) != null) {
+ out.write(getProject().replaceProperties(line));
+ out.newLine();
+ }
+ } finally {
+ freader.close();
}
- } finally {
- freader.close();
+ } else {
+ out.write(getProject().replaceProperties(buffer.substring(0)));
+ out.newLine();
}
- } else {
- out.write(getProject().replaceProperties(buffer.substring(0)));
- out.newLine();
+ out.flush();
+ } finally {
+ FileUtils.close(out);
}
- out.flush();
}
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/Cab.java b/src/main/org/apache/tools/ant/taskdefs/optional/Cab.java
index 6f063c1..a0b5406 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/Cab.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/Cab.java
@@ -179,14 +179,18 @@
throws IOException {
File listFile = FILE_UTILS.createTempFile("ant", "", null, true, true);
- BufferedWriter writer = new BufferedWriter(new FileWriter(listFile));
+ BufferedWriter writer = null;
+ try {
+ writer = new BufferedWriter(new FileWriter(listFile));
- int size = files.size();
- for (int i = 0; i < size; i++) {
- writer.write('\"' + files.elementAt(i).toString() + '\"');
- writer.newLine();
+ int size = files.size();
+ for (int i = 0; i < size; i++) {
+ writer.write('\"' + files.elementAt(i).toString() + '\"');
+ writer.newLine();
+ }
+ } finally {
+ FileUtils.close(writer);
}
- writer.close();
return listFile;
}
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/ReplaceRegExp.java b/src/main/org/apache/tools/ant/taskdefs/optional/ReplaceRegExp.java
index 829a469..cc630cb 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/ReplaceRegExp.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/ReplaceRegExp.java
@@ -354,6 +354,7 @@
Reader r = null;
Writer w = null;
+ BufferedWriter bw = null;
try {
if (encoding == null) {
@@ -366,7 +367,7 @@
}
BufferedReader br = new BufferedReader(r);
- BufferedWriter bw = new BufferedWriter(w);
+ bw = new BufferedWriter(w);
boolean changes = false;
@@ -447,7 +448,6 @@
}
} while (c >= 0);
- bw.flush();
} else {
String buf = FileUtils.safeReadFully(br);
@@ -458,9 +458,10 @@
}
bw.write(res);
- bw.flush();
}
+ bw.flush();
+
r.close();
r = null;
w.close();
@@ -484,6 +485,7 @@
}
} finally {
FileUtils.close(r);
+ FileUtils.close(bw);
FileUtils.close(w);
if (temp != null) {
temp.delete();
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/i18n/Translate.java b/src/main/org/apache/tools/ant/taskdefs/optional/i18n/Translate.java
index 3ca2266..cf6fa5f 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/i18n/Translate.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/i18n/Translate.java
@@ -530,87 +530,7 @@
if (needsWork) {
log("Processing " + srcFiles[j],
Project.MSG_DEBUG);
- FileOutputStream fos = new FileOutputStream(dest);
- BufferedWriter out
- = new BufferedWriter(new OutputStreamWriter(fos, destEncoding));
- FileInputStream fis = new FileInputStream(src);
- BufferedReader in
- = new BufferedReader(new InputStreamReader(fis, srcEncoding));
- String line;
- LineTokenizer lineTokenizer = new LineTokenizer();
- lineTokenizer.setIncludeDelims(true);
- line = lineTokenizer.getToken(in);
- while ((line) != null) {
- // 2003-02-21 new replace algorithm by tbee (tbee@tbee.org)
- // because it wasn't able to replace something like "@aaa;@bbb;"
-
- // is there a startToken
- // and there is still stuff following the startToken
- int startIndex = line.indexOf(startToken);
- while (startIndex >= 0
- && (startIndex + startToken.length()) <= line.length()) {
- // the new value, this needs to be here
- // because it is required to calculate the next position to
- // search from at the end of the loop
- String replace = null;
-
- // we found a starttoken, is there an endtoken following?
- // start at token+tokenlength because start and end
- // token may be indentical
- int endIndex = line.indexOf(
- endToken, startIndex + startToken.length());
- if (endIndex < 0) {
- startIndex += 1;
- } else {
- // grab the token
- String token = line.substring(
- startIndex + startToken.length(), endIndex);
-
- // If there is a white space or = or :, then
- // it isn't to be treated as a valid key.
- boolean validToken = true;
- for (int k = 0; k < token.length() && validToken; k++) {
- char c = token.charAt(k);
- if (c == ':' || c == '='
- || Character.isSpaceChar(c)) {
- validToken = false;
- }
- }
- if (!validToken) {
- startIndex += 1;
- } else {
- // find the replace string
- if (resourceMap.containsKey(token)) {
- replace = (String) resourceMap.get(token);
- } else {
- log("Replacement string missing for: "
- + token, Project.MSG_VERBOSE);
- replace = startToken + token + endToken;
- }
-
-
- // generate the new line
- line = line.substring(0, startIndex)
- + replace
- + line.substring(endIndex + endToken.length());
-
- // set start position for next search
- startIndex += replace.length();
- }
- }
-
- // find next starttoken
- startIndex = line.indexOf(startToken, startIndex);
- }
- out.write(line);
- line = lineTokenizer.getToken(in);
- }
- if (in != null) {
- in.close();
- }
- if (out != null) {
- out.close();
- }
+ translateOneFile(src, dest);
++filesProcessed;
} else {
log("Skipping " + srcFiles[j]
@@ -624,4 +544,87 @@
}
log("Translation performed on " + filesProcessed + " file(s).", Project.MSG_DEBUG);
}
+
+ private void translateOneFile(File src, File dest) throws IOException {
+ BufferedWriter out = null;
+ BufferedReader in = null;
+ try {
+ FileOutputStream fos = new FileOutputStream(dest);
+ out = new BufferedWriter(new OutputStreamWriter(fos, destEncoding));
+ FileInputStream fis = new FileInputStream(src);
+ in = new BufferedReader(new InputStreamReader(fis, srcEncoding));
+ String line;
+ LineTokenizer lineTokenizer = new LineTokenizer();
+ lineTokenizer.setIncludeDelims(true);
+ line = lineTokenizer.getToken(in);
+ while ((line) != null) {
+ // 2003-02-21 new replace algorithm by tbee (tbee@tbee.org)
+ // because it wasn't able to replace something like "@aaa;@bbb;"
+
+ // is there a startToken
+ // and there is still stuff following the startToken
+ int startIndex = line.indexOf(startToken);
+ while (startIndex >= 0
+ && (startIndex + startToken.length()) <= line.length()) {
+ // the new value, this needs to be here
+ // because it is required to calculate the next position to
+ // search from at the end of the loop
+ String replace = null;
+
+ // we found a starttoken, is there an endtoken following?
+ // start at token+tokenlength because start and end
+ // token may be indentical
+ int endIndex = line.indexOf(endToken, startIndex
+ + startToken.length());
+ if (endIndex < 0) {
+ startIndex += 1;
+ } else {
+ // grab the token
+ String token = line.substring(startIndex
+ + startToken.length(),
+ endIndex);
+
+ // If there is a white space or = or :, then
+ // it isn't to be treated as a valid key.
+ boolean validToken = true;
+ for (int k = 0; k < token.length() && validToken; k++) {
+ char c = token.charAt(k);
+ if (c == ':' || c == '='
+ || Character.isSpaceChar(c)) {
+ validToken = false;
+ }
+ }
+ if (!validToken) {
+ startIndex += 1;
+ } else {
+ // find the replace string
+ if (resourceMap.containsKey(token)) {
+ replace = (String) resourceMap.get(token);
+ } else {
+ log("Replacement string missing for: " + token,
+ Project.MSG_VERBOSE);
+ replace = startToken + token + endToken;
+ }
+
+
+ // generate the new line
+ line = line.substring(0, startIndex) + replace
+ + line.substring(endIndex + endToken.length());
+
+ // set start position for next search
+ startIndex += replace.length();
+ }
+ }
+
+ // find next starttoken
+ startIndex = line.indexOf(startToken, startIndex);
+ }
+ out.write(line);
+ line = lineTokenizer.getToken(in);
+ }
+ } finally {
+ FileUtils.close(in);
+ FileUtils.close(out);
+ }
+ }
}
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/BriefJUnitResultFormatter.java b/src/main/org/apache/tools/ant/taskdefs/optional/junit/BriefJUnitResultFormatter.java
index e7b7a07..6ed4f12 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/junit/BriefJUnitResultFormatter.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/BriefJUnitResultFormatter.java
@@ -169,10 +169,14 @@
output.write(sb.toString());
resultWriter.close();
output.write(results.toString());
- output.flush();
} catch (IOException ex) {
throw new BuildException(ex);
} finally {
+ try {
+ output.flush();
+ } catch (IOException ex) {
+ // swallow, there has likely been an exception before this
+ }
if (out != System.out && out != System.err) {
FileUtils.close(out);
}
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/FailureRecorder.java b/src/main/org/apache/tools/ant/taskdefs/optional/junit/FailureRecorder.java
index 8399416..3156b1a 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/junit/FailureRecorder.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/FailureRecorder.java
@@ -255,9 +255,10 @@
createSuiteMethod();
createClassFooter();
- FileUtils.close(writer);
} catch (IOException e) {
e.printStackTrace();
+ } finally {
+ FileUtils.close(writer);
}
}
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTestRunner.java b/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTestRunner.java
index d483d13..e56a7bd 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTestRunner.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTestRunner.java
@@ -44,6 +44,7 @@
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.types.Permissions;
+import org.apache.tools.ant.util.FileUtils;
import org.apache.tools.ant.util.StringUtils;
import org.apache.tools.ant.util.TeeOutputStream;
@@ -898,6 +899,8 @@
}
} catch (Exception e) {
return stack; // return the stack unfiltered
+ } finally {
+ FileUtils.close(pw);
}
return sw.toString();
}
@@ -941,9 +944,7 @@
out.write(Constants.TERMINATED_SUCCESSFULLY + "\n");
out.flush();
} finally {
- if (out != null) {
- out.close();
- }
+ FileUtils.close(out);
}
}
}
@@ -957,9 +958,7 @@
out.write(testCase + "\n");
out.flush();
} finally {
- if (out != null) {
- out.close();
- }
+ FileUtils.close(out);
}
} catch (IOException e) {
// ignored.
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java b/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java
index 35621ce..5e3d1d7 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/XMLJUnitResultFormatter.java
@@ -169,10 +169,16 @@
wri = new BufferedWriter(new OutputStreamWriter(out, "UTF8"));
wri.write("<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n");
(new DOMElementWriter()).write(rootElement, wri, 0, " ");
- wri.flush();
} catch (IOException exc) {
throw new BuildException("Unable to write log file", exc);
} finally {
+ if (wri != null) {
+ try {
+ wri.flush();
+ } catch (IOException ex) {
+ // ignore
+ }
+ }
if (out != System.out && out != System.err) {
FileUtils.close(wri);
}
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java
index 1857f8a..257e5b7 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java
@@ -1799,9 +1799,7 @@
}
}
} finally {
- if (bw != null) {
- bw.close();
- }
+ FileUtils.close(bw);
}
return dsfiles.length;
@@ -2158,13 +2156,7 @@
transferred++;
}
} finally {
- if (instream != null) {
- try {
- instream.close();
- } catch (IOException ex) {
- // ignore it
- }
- }
+ FileUtils.close(instream);
}
}
@@ -2295,13 +2287,7 @@
}
}
} finally {
- if (outstream != null) {
- try {
- outstream.close();
- } catch (IOException ex) {
- // ignore it
- }
- }
+ FileUtils.close(outstream);
}
}
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/pvcs/Pvcs.java b/src/main/org/apache/tools/ant/taskdefs/optional/pvcs/Pvcs.java
index e3cae4d..c42f034 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/pvcs/Pvcs.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/pvcs/Pvcs.java
@@ -38,6 +38,7 @@
import org.apache.tools.ant.taskdefs.LogStreamHandler;
import org.apache.tools.ant.taskdefs.PumpStreamHandler;
import org.apache.tools.ant.types.Commandline;
+import org.apache.tools.ant.util.FileUtils;
/**
*
@@ -205,7 +206,7 @@
new LogOutputStream(this,
Project.MSG_WARN)));
} finally {
- fos.close();
+ FileUtils.close(fos);
}
if (Execute.isFailure(result) && !ignorerc) {
@@ -340,9 +341,7 @@
line = in.readLine();
}
} finally {
- if (in != null) {
- in.close();
- }
+ FileUtils.close(in);
}
}
@@ -366,12 +365,8 @@
outWriter.newLine();
}
} finally {
- if (inReader != null) {
- inReader.close();
- }
- if (outWriter != null) {
- outWriter.close();
- }
+ FileUtils.close(inReader);
+ FileUtils.close(outWriter);
}
}
diff --git a/xdocs/antnews.xml b/xdocs/antnews.xml
index 7e7c1a3..b93c783 100644
--- a/xdocs/antnews.xml
+++ b/xdocs/antnews.xml
@@ -27,7 +27,7 @@
<body>
<section name="Ant1.8.0">
- <h3>Februrary 5th, 2010 - Ant 1.8.0 Released</h3>
+ <h3>Februrary 8th, 2010 - Ant 1.8.0 Released</h3>
<p>Apache Ant 1.8.0 is now available for download as source or binary (with and without
dependencies) from
<a href="http://ant.apache.org/bindownload.cgi">http://ant.apache.org/bindownload.cgi</a>.</p>
diff --git a/xdocs/bindownload.xml b/xdocs/bindownload.xml
index 8a20301..5a4ea12 100644
--- a/xdocs/bindownload.xml
+++ b/xdocs/bindownload.xml
@@ -80,7 +80,7 @@
<div class="warning">
<div class="label">Note</div>
-<div class="content">Ant 1.8.0 was released on 5-Feb-2010 and
+<div class="content">Ant 1.8.0 was released on 8-Feb-2010 and
may not be available on all mirrors for a few days.</div>
</div>
<br></br>
diff --git a/xdocs/faq.xml b/xdocs/faq.xml
index 200a01f..43aff03 100644
--- a/xdocs/faq.xml
+++ b/xdocs/faq.xml
@@ -224,7 +224,7 @@
</tr>
<tr>
<td>1.8.0</td>
- <td>5 February 2010</td>
+ <td>8 February 2010</td>
</tr>
</table>
</answer>
diff --git a/xdocs/index.xml b/xdocs/index.xml
index 7209919..b4fd2da 100644
--- a/xdocs/index.xml
+++ b/xdocs/index.xml
@@ -25,7 +25,7 @@
<body>
<section name="Ant 1.8.0">
- <h3>February 5, 2010 - Ant 1.8.0 Available</h3>
+ <h3>February 8, 2010 - Ant 1.8.0 Available</h3>
<p>
Apache Ant 1.8.0 is now available for
<a href="http://ant.apache.org/bindownload.cgi">download</a>
diff --git a/xdocs/srcdownload.xml b/xdocs/srcdownload.xml
index 4887e8f..411f54f 100644
--- a/xdocs/srcdownload.xml
+++ b/xdocs/srcdownload.xml
@@ -77,7 +77,7 @@
<div class="warning">
<div class="label">Note</div>
-<div class="content">Ant 1.8.0 was released on 5-Feb-2010 and
+<div class="content">Ant 1.8.0 was released on 8-Feb-2010 and
may not be available on all mirrors for a few days.</div>
</div>
<br></br>