Author: jfallows
Date: Sat Aug 27 06:04:57 2011
New Revision: 1162299

URL: http://svn.apache.org/viewvc?rev=1162299&view=rev
Log:
Handle different debug symbols extension on Mono (.mdb) vs .NET (.pdb)

Modified:
    
incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java

Modified: 
incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java
URL: 
http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java?rev=1162299&r1=1162298&r2=1162299&view=diff
==============================================================================
--- 
incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java
 (original)
+++ 
incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java
 Sat Aug 27 06:04:57 2011
@@ -39,6 +39,7 @@ import npanday.executable.compiler.Compi
 import npanday.executable.compiler.CompilerConfig;
 import npanday.executable.compiler.CompilerExecutable;
 import npanday.executable.compiler.CompilerRequirement;
+import npanday.vendor.Vendor;
 import npanday.vendor.VendorFactory;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.plugin.AbstractMojo;
@@ -395,10 +396,15 @@ public class AssemblyMerger extends Abst
 
                 if ( mergeDebugSymbols )
                 {
-                    String mergedArtifactSymbolFileName = 
mergedArtifactFile.getName().replace( ".dll", ".pdb" );
+                    Vendor vendor = compilerExecutable.getVendor();
+                    String debugSymbolsExtension = ( vendor == Vendor.MONO ) ? 
".mdb" : ".pdb";
+                    String mergedArtifactSymbolFileName = 
mergedArtifactFile.getName().replace( ".dll", debugSymbolsExtension );
                     File mergedArtifactSymbolFile = new File( 
mergedArtifactFile.getParentFile(), mergedArtifactSymbolFileName );
-                    File mergedArtifactTempSymbolFile = new File( 
mergedArtifactTempDirectory, mergedArtifactSymbolFileName );
-                    FileUtils.rename( mergedArtifactTempSymbolFile, 
mergedArtifactSymbolFile );
+                    if ( mergedArtifactSymbolFile.exists() )
+                    {
+                        File mergedArtifactTempSymbolFile = new File( 
mergedArtifactTempDirectory, mergedArtifactSymbolFileName );
+                        FileUtils.rename( mergedArtifactTempSymbolFile, 
mergedArtifactSymbolFile );
+                    }
                 }
 
                 FileUtils.deleteDirectory( mergedArtifactTempDirectory );


Reply via email to