You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by pa...@apache.org on 2016/10/23 15:05:02 UTC
[1/2] [lang] LANG-1276: StrBuilder#replaceAll
ArrayIndexOutOfBoundsException (closes #200)
Repository: commons-lang
Updated Branches:
refs/heads/master e2dbe55d5 -> 65ed41ff7
LANG-1276: StrBuilder#replaceAll ArrayIndexOutOfBoundsException (closes #200)
Avoid ArrayIndexOutOfBoundsException by keeping variable buf consistent with buffer in StrBuilder#replaceImpl.
Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/10325422
Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/10325422
Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/10325422
Branch: refs/heads/master
Commit: 10325422e5a4735aa87a4d47bdb377e09fe963d2
Parents: e2dbe55
Author: Andy Klimczak <an...@fastmail.com>
Authored: Sat Oct 22 21:54:14 2016 -0400
Committer: pascalschumacher <pa...@gmx.net>
Committed: Sun Oct 23 17:01:43 2016 +0200
----------------------------------------------------------------------
src/main/java/org/apache/commons/lang3/text/StrBuilder.java | 2 +-
src/test/java/org/apache/commons/lang3/text/StrBuilderTest.java | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/10325422/src/main/java/org/apache/commons/lang3/text/StrBuilder.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/lang3/text/StrBuilder.java b/src/main/java/org/apache/commons/lang3/text/StrBuilder.java
index 5679484..6079101 100644
--- a/src/main/java/org/apache/commons/lang3/text/StrBuilder.java
+++ b/src/main/java/org/apache/commons/lang3/text/StrBuilder.java
@@ -2110,8 +2110,8 @@ public class StrBuilder implements CharSequence, Appendable, Serializable, Build
return this;
}
final int replaceLen = (replaceStr == null ? 0 : replaceStr.length());
- final char[] buf = buffer;
for (int i = from; i < to && replaceCount != 0; i++) {
+ final char[] buf = buffer;
final int removeLen = matcher.isMatch(buf, i, from, to);
if (removeLen > 0) {
replaceImpl(i, i + removeLen, removeLen, replaceStr, replaceLen);
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/10325422/src/test/java/org/apache/commons/lang3/text/StrBuilderTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/lang3/text/StrBuilderTest.java b/src/test/java/org/apache/commons/lang3/text/StrBuilderTest.java
index 7fa0579..f83dc49 100644
--- a/src/test/java/org/apache/commons/lang3/text/StrBuilderTest.java
+++ b/src/test/java/org/apache/commons/lang3/text/StrBuilderTest.java
@@ -897,6 +897,10 @@ public class StrBuilderTest {
sb = new StrBuilder("A1-A2A3-A4");
sb.replaceAll(A_NUMBER_MATCHER, "***");
assertEquals("***-******-***", sb.toString());
+
+ sb = new StrBuilder("Dear X, hello X.");
+ sb.replaceAll(StrMatcher.stringMatcher("X"), "012345678901234567");
+ assertEquals("Dear 012345678901234567, hello 012345678901234567.", sb.toString());
}
@Test
[2/2] [lang] LANG-1276: add changes.xml entry
Posted by pa...@apache.org.
LANG-1276: add changes.xml entry
Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/65ed41ff
Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/65ed41ff
Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/65ed41ff
Branch: refs/heads/master
Commit: 65ed41ff7a8cfb0bbc03620e186382a16e23db56
Parents: 1032542
Author: pascalschumacher <pa...@gmx.net>
Authored: Sun Oct 23 17:03:51 2016 +0200
Committer: pascalschumacher <pa...@gmx.net>
Committed: Sun Oct 23 17:03:51 2016 +0200
----------------------------------------------------------------------
src/changes/changes.xml | 1 +
1 file changed, 1 insertion(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/65ed41ff/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 29f1725..196af87 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -46,6 +46,7 @@ The <action> type attribute can be add,update,fix,remove.
<body>
<release version="3.6" date="tba" description="tba">
+ <action issue="LANG-1276" type="fix" dev="pschumacher" due-to="Andy Klimczak">StrBuilder#replaceAll ArrayIndexOutOfBoundsException</action>
<action issue="LANG-1278" type="fix" dev="pschumacher" due-to="Duke Yin">BooleanUtils javadoc issues</action>
<action issue="LANG-1277" type="update" dev="pschumacher" due-to="yufcuy">StringUtils#getLevenshteinDistance reduce memory consumption</action>
<action issue="LANG-1070" type="fix" dev="pschumacher" due-to="Paul Pogonyshev">ArrayUtils#add confusing example in javadoc</action>