ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From maart...@apache.org
Subject svn commit: r905823 - in /ant/ivy/core/trunk: CHANGES.txt src/java/org/apache/ivy/util/FileUtil.java
Date Tue, 02 Feb 2010 22:28:00 GMT
Author: maartenc
Date: Tue Feb  2 22:28:00 2010
New Revision: 905823

URL: http://svn.apache.org/viewvc?rev=905823&view=rev
Log:
FIX: Creation of symlinks problematic in Windows with Cygwin 1.7 (IVY-1165)

Modified:
    ant/ivy/core/trunk/CHANGES.txt
    ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java

Modified: ant/ivy/core/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/CHANGES.txt?rev=905823&r1=905822&r2=905823&view=diff
==============================================================================
--- ant/ivy/core/trunk/CHANGES.txt (original)
+++ ant/ivy/core/trunk/CHANGES.txt Tue Feb  2 22:28:00 2010
@@ -107,6 +107,7 @@
 - IMPROVEMENT: Trace a message when a property file referenced from the settings doesn't
exixts (IVY-1074)
 - IMPROVEMENT: use defaultconf in combination with defaultconfmapping (IVY-1135) (thanks
to Jon Schneider)
 
+- FIX: Creation of symlinks problematic in Windows with Cygwin 1.7 (IVY-1165)
 - FIX: add ability to programmatically change default resolver (IVY-1163) (thanks to Jason
Trump)
 - FIX: ivy.settings.dir space escaping problem (IVY-1162)
 - FIX: Ivy cannot parse alternate format for Maven MD5 files (IVY-1155)

Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java?rev=905823&r1=905822&r2=905823&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java (original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java Tue Feb  2 22:28:00 2010
@@ -86,8 +86,16 @@
 
                 throw new IOException("error symlinking " + src + " to " + dest + ":\n" +
error);
             }
+            
+            // check if the creation of the symbolic link was successful
             if (!dest.exists()) {
-                throw new IOException("error symlinking " + dest + " doesn't exists"); 
+                throw new IOException("error symlinking: " + dest + " doesn't exists");
+            }
+            
+            // check if the result is a true symbolic link
+            if (dest.getAbsolutePath().equals(dest.getCanonicalPath())) {
+                overwrite = true; // just make sure we do overwrite the invalid symlink!
+                throw new IOException("error symlinking: " + dest + " isn't a symlink");

             }
         } catch (IOException x) {
             Message.verbose("symlink failed; falling back to copy");



Mime
View raw message