Author: olamy
Date: Mon Dec 16 03:35:55 2013
New Revision: 1551109

URL: http://svn.apache.org/r1551109
Log:
prevent possible race condition if the file has been deleted

Modified:
    
archiva/trunk/archiva-modules/archiva-base/archiva-filelock/src/main/java/org/apache/archiva/common/filelock/DefaultFileLockManager.java

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-filelock/src/main/java/org/apache/archiva/common/filelock/DefaultFileLockManager.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-filelock/src/main/java/org/apache/archiva/common/filelock/DefaultFileLockManager.java?rev=1551109&r1=1551108&r2=1551109&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-filelock/src/main/java/org/apache/archiva/common/filelock/DefaultFileLockManager.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-filelock/src/main/java/org/apache/archiva/common/filelock/DefaultFileLockManager.java
 Mon Dec 16 03:35:55 2013
@@ -65,7 +65,7 @@ public class DefaultFileLockManager
         try
         {
 
-            Lock lock = new Lock( file, false );
+            Lock lock = null;
 
             stopWatch.start();
 
@@ -84,6 +84,8 @@ public class DefaultFileLockManager
                     }
                 }
 
+                lock = new Lock( file, false );
+
                 Lock current = lockFiles.get( file );
 
                 if ( current != null )
@@ -143,12 +145,13 @@ public class DefaultFileLockManager
 
         try
         {
-            Lock lock = new Lock( file, true );
+            Lock lock = null;
 
             stopWatch.start();
 
             while ( !acquired )
             {
+
                 if ( timeout > 0 )
                 {
                     long delta = stopWatch.getTime();
@@ -161,6 +164,8 @@ public class DefaultFileLockManager
                     }
                 }
 
+                lock = new Lock( file, true );
+
                 Lock current = lockFiles.get( file );
 
                 if ( current != null )


Reply via email to