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 )