You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Henri Yandell (JIRA)" <ji...@apache.org> on 2011/07/27 07:43:12 UTC
[jira] [Commented] (LANG-686)
StringUtils.replaceEachRepeatedly("aaa", new String[]{"aa"}, new
String[]{"aXa"}); throw an exception
[ https://issues.apache.org/jira/browse/LANG-686?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13071526#comment-13071526 ]
Henri Yandell commented on LANG-686:
------------------------------------
Digging into this, the search should have been:
"aaa"
"aXaa"
"aXaXa"
Which is hardly the deepest loop.
The TTL would have been 1, ie) the length of the inputted String[] { "aXa" }.
I wonder if the issue is that TTL needs to be longer (which is what qed did by adding extra ""s).
> StringUtils.replaceEachRepeatedly("aaa", new String[]{"aa"}, new String[]{"aXa"}); throw an exception
> -----------------------------------------------------------------------------------------------------
>
> Key: LANG-686
> URL: https://issues.apache.org/jira/browse/LANG-686
> Project: Commons Lang
> Issue Type: Bug
> Components: lang.*
> Affects Versions: 2.6
> Environment: jdk 1.6.24, windows xp pro sp3, eclipse helios
> Reporter: qed
> Fix For: 3.0.1
>
>
> After executing line
> StringUtils.replaceEachRepeatedly("aaa", new String[]{"aa"}, new String[]{"aXa"});
> exception is thrown:
> Exception in thread "main" java.lang.IllegalStateException: TimeToLive of -1 is less than 0: aXaXa
> at org.apache.commons.lang.StringUtils.replaceEach(StringUtils.java:3986)
> at org.apache.commons.lang.StringUtils.replaceEach(StringUtils.java:4099)
> at org.apache.commons.lang.StringUtils.replaceEach(StringUtils.java:4099)
> at org.apache.commons.lang.StringUtils.replaceEachRepeatedly(StringUtils.java:3920)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira