From f1122490cd550911b1aedf1fe03866062e392942 Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Thu, 24 Apr 2003 09:27:02 +0000 Subject: [PATCH] More code reuse git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@274510 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/tools/ant/taskdefs/Replace.java | 20 +++---------------- .../ant/taskdefs/optional/ReplaceRegExp.java | 3 +++ 2 files changed, 6 insertions(+), 17 deletions(-) diff --git a/src/main/org/apache/tools/ant/taskdefs/Replace.java b/src/main/org/apache/tools/ant/taskdefs/Replace.java index 06e55ac64..0c2252eaa 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Replace.java +++ b/src/main/org/apache/tools/ant/taskdefs/Replace.java @@ -402,25 +402,11 @@ public class Replace extends MatchingTask { BufferedReader br = new BufferedReader(reader); BufferedWriter bw = new BufferedWriter(writer); - // read the entire file into a StringBuffer - // size of work buffer may be bigger than needed - // when multibyte characters exist in the source file - // but then again, it might be smaller than needed on - // platforms like Windows where length can't be trusted - int fileLengthInBytes = (int) src.length(); - StringBuffer tmpBuf = new StringBuffer(fileLengthInBytes); - int readChar = 0; - int totread = 0; - while (true) { - readChar = br.read(); - if (readChar < 0) { break; } - tmpBuf.append((char) readChar); - totread++; + String buf = fileUtils.readFully(br); + if (buf == null) { + buf = ""; } - // create a String so we can use indexOf - String buf = tmpBuf.toString(); - //Preserve original string (buf) so we can compare the result String newString = new String(buf); 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 cd7895a6d..ba1372c12 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/ReplaceRegExp.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/ReplaceRegExp.java @@ -417,6 +417,9 @@ public class ReplaceRegExp extends Task { pw.flush(); } else { String buf = fileUtils.readFully(br); + if (buf == null) { + buf = ""; + } String res = doReplace(regex, subs, buf, options);