diff --git a/proposal/myrmidon/src/java/org/apache/aut/nativelib/Environment.java b/proposal/myrmidon/src/java/org/apache/aut/nativelib/Environment.java index cbe9c6804..ec22959ba 100644 --- a/proposal/myrmidon/src/java/org/apache/aut/nativelib/Environment.java +++ b/proposal/myrmidon/src/java/org/apache/aut/nativelib/Environment.java @@ -100,38 +100,32 @@ public final class Environment final Properties properties = new Properties(); final BufferedReader in = new BufferedReader( new StringReader( data ) ); - String var = null; + final StringBuffer var = new StringBuffer(); String line; - while( ( line = in.readLine() ) != null ) + while( null != ( line = in.readLine() ) ) { - if( line.indexOf( '=' ) == -1 ) + if( -1 == line.indexOf( '=' ) ) { // Chunk part of previous env var (UNIX env vars can // contain embedded new lines). - if( var == null ) - { - var = StringUtil.LINE_SEPARATOR + line; - } - else - { - var += StringUtil.LINE_SEPARATOR + line; - } + var.append( StringUtil.LINE_SEPARATOR ); } else { // New env var...append the previous one if we have it. - if( var != null ) + if( 0 != var.length() ) { - addProperty( properties, var ); + addProperty( properties, var.toString() ); + var.setLength( 0 ); } - var = line; } + var.append( line ); } // Since we "look ahead" before adding, there's one last env var. - if( null != var ) + if( 0 != var.length() ) { - addProperty( properties, var ); + addProperty( properties, var.toString() ); } return properties; }