You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Maurizio Cucchiara (JIRA)" <ji...@apache.org> on 2011/03/10 17:40:59 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=13005142#comment-13005142 ] 

Maurizio Cucchiara commented on LANG-686:
-----------------------------------------

I'm not sure this is a bug. The IllegalStateException was throwned because your substitution pattern triggers a (though little) recursion, it's a kind of prevention, in order to avoid StackOverflowError

> 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
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> 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