From 12438f83eb481020c4c306d1dd1d58fd994b757b Mon Sep 17 00:00:00 2001 From: Peter Donald Date: Sat, 26 Jan 2002 11:59:31 +0000 Subject: [PATCH] Make sure loop counter not misused Removing a Audit violation git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270874 13f79535-47bb-0310-9956-ffa450edef68 --- .../configurer/DefaultObjectConfigurer.java | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/DefaultObjectConfigurer.java b/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/DefaultObjectConfigurer.java index 947084982..74b7f66e7 100644 --- a/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/DefaultObjectConfigurer.java +++ b/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/DefaultObjectConfigurer.java @@ -309,7 +309,8 @@ public class DefaultObjectConfigurer { // Make sure there are no pending created objects final DefaultConfigurationState defState = (DefaultConfigurationState)state; - for( int i = 0; i < m_allProps.size(); i++ ) + final int size = m_allProps.size(); + for( int i = 0; i < size; i++ ) { if( defState.getCreatedObject( i ) != null ) { @@ -362,18 +363,25 @@ public class DefaultObjectConfigurer { final StringBuffer sb = new StringBuffer( methodName ); sb.delete( 0, prefixLen ); - for( int i = 0; i < sb.length(); i++ ) + + //Contains the index that we are up to in string buffer. + //May not be equal to i as length of string buffer may change + int index = 0; + + final int size = sb.length(); + for( int i = 0; i < size; i++ ) { - char ch = sb.charAt( i ); + char ch = sb.charAt( index ); if( Character.isUpperCase( ch ) ) { - if( i > 0 ) + if( index > 0 ) { - sb.insert( i, '-' ); - i++; + sb.insert( index, '-' ); + index++; } - sb.setCharAt( i, Character.toLowerCase( ch ) ); + sb.setCharAt( index, Character.toLowerCase( ch ) ); } + index++; } return sb.toString(); }