You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2011/06/23 00:42:42 UTC
svn commit: r1138668 -
/maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java
Author: jdcasey
Date: Wed Jun 22 22:42:42 2011
New Revision: 1138668
URL: http://svn.apache.org/viewvc?rev=1138668&view=rev
Log:
fixing memory issue with erroneously and recursively appending a stringbuilder to itself.
Modified:
maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java
Modified: maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java?rev=1138668&r1=1138667&r2=1138668&view=diff
==============================================================================
--- maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java (original)
+++ maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java Wed Jun 22 22:42:42 2011
@@ -77,7 +77,8 @@ public class DefaultProjectLoader
private SessionInjector sessionInjector;
@Override
- public List<MavenProject> buildReactorProjectInstances( final ProjectToolsSession session, final boolean recursive, final File... rootPoms )
+ public List<MavenProject> buildReactorProjectInstances( final ProjectToolsSession session, final boolean recursive,
+ final File... rootPoms )
throws ProjectToolsException
{
final ProjectBuildingRequest pbr = sessionInjector.getProjectBuildingRequest( session );
@@ -109,8 +110,6 @@ public class DefaultProjectLoader
}
catch ( final ProjectBuildingException e )
{
- // logger.error( "Failed to build MavenProject instances from POM files for sorting: " + e.getMessage(), e
- // );
final List<ProjectBuildingResult> results = e.getResults();
final StringBuilder sb = new StringBuilder();
@@ -130,13 +129,15 @@ public class DefaultProjectLoader
int i = 0;
for ( final ProjectBuildingResult result : results )
{
+ StringBuilder builder = new StringBuilder();
final List<ModelProblem> problems = result.getProblems();
if ( problems != null && !problems.isEmpty() )
{
- sb.append( "\n" ).append( result.getProjectId() );
+ builder.append( "\n" ).append( result.getProjectId() );
for ( final ModelProblem problem : problems )
{
- sb.append( "\n\t" )
+ builder.append( "\n\t" )
+ .append( ( ++i ) ).append( " " )
.append( problem.getMessage() )
.append( "\n\t\t" )
.append( problem.getSource() )
@@ -150,12 +151,12 @@ public class DefaultProjectLoader
final PrintWriter pWriter = new PrintWriter( sWriter );
problem.getException().printStackTrace( pWriter );
- sb.append( "\n" ).append( sWriter );
+ builder.append( "\n" ).append( sWriter );
}
-
- sb.append( ( ++i ) ).append( " " ).append( sb );
}
}
+
+ sb.append( builder );
}
}
@@ -205,7 +206,7 @@ public class DefaultProjectLoader
{
LOGGER.debug( "Marking parent POM: " + current + " as dependency of POM: " + next );
}
-
+
session.connectProjectHierarchy( next, true, current, true );
if ( !parentage.isEmpty() )