Return-Path: Delivered-To: apmail-maven-commits-archive@www.apache.org Received: (qmail 69732 invoked from network); 9 Sep 2009 15:26:32 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 9 Sep 2009 15:26:32 -0000 Received: (qmail 95186 invoked by uid 500); 9 Sep 2009 15:26:32 -0000 Delivered-To: apmail-maven-commits-archive@maven.apache.org Received: (qmail 95088 invoked by uid 500); 9 Sep 2009 15:26:31 -0000 Mailing-List: contact commits-help@maven.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@maven.apache.org Delivered-To: mailing list commits@maven.apache.org Received: (qmail 95079 invoked by uid 99); 9 Sep 2009 15:26:31 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 09 Sep 2009 15:26:31 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 09 Sep 2009 15:26:28 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 8D6F423888DB; Wed, 9 Sep 2009 15:26:06 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r812993 - /maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java Date: Wed, 09 Sep 2009 15:26:04 -0000 To: commits@maven.apache.org From: bentmann@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20090909152607.8D6F423888DB@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: bentmann Date: Wed Sep 9 15:26:04 2009 New Revision: 812993 URL: http://svn.apache.org/viewvc?rev=812993&view=rev Log: [MNG-4349] [regression] Maven hangs in endless loop if POM of relocated artifact is invalid Modified: maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java Modified: maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java?rev=812993&r1=812992&r2=812993&view=diff ============================================================================== --- maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java (original) +++ maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java Wed Sep 9 15:26:04 2009 @@ -162,6 +162,8 @@ pomArtifact = rel.pomArtifact; + relocatedArtifact = rel.relocatedArtifact; + if ( rel.project == null ) { // When this happens we have a Maven 1.x POM, or some invalid POM. There is still a pile of @@ -171,8 +173,6 @@ } else { - relocatedArtifact = rel.relocatedArtifact; - dependencies = rel.project.getDependencies(); DependencyManagement depMngt = rel.project.getDependencyManagement(); @@ -454,13 +454,15 @@ private ProjectRelocation retrieveRelocatedProject( Artifact artifact, RepositoryRequest repositoryRequest ) throws ArtifactMetadataRetrievalException { - MavenProject project = null; + MavenProject project; Artifact pomArtifact; Artifact relocatedArtifact = artifact; boolean done = false; do { + project = null; + pomArtifact = repositorySystem.createProjectArtifact( relocatedArtifact.getGroupId(), relocatedArtifact.getArtifactId(), @@ -497,11 +499,11 @@ // missing/incompatible POM (e.g. a Maven 1 POM) if ( e.getCause() instanceof ArtifactResolutionException ) { - message = "Missing artifact metadata for " + artifact.getId(); + message = "Missing artifact metadata for " + relocatedArtifact.getId(); } else { - message = "Invalid artifact metadata for " + artifact.getId(); + message = "Invalid artifact metadata for " + relocatedArtifact.getId(); } if ( logger.isDebugEnabled() )