CURATOR-211 - Fix readLockPredicate() index validation issue

Project: http://git-wip-us.apache.org/repos/asf/curator/repo
Commit: http://git-wip-us.apache.org/repos/asf/curator/commit/fc115149
Tree: http://git-wip-us.apache.org/repos/asf/curator/tree/fc115149
Diff: http://git-wip-us.apache.org/repos/asf/curator/diff/fc115149

Branch: refs/heads/CURATOR-160
Commit: fc11514987e0ad25046fa384672c6f16408b736b
Parents: c47ae74
Author: Alexander Makarenko <estliberi...@gmail.com>
Authored: Thu Apr 30 01:37:35 2015 +0300
Committer: Alexander Makarenko <estliberi...@gmail.com>
Committed: Thu Apr 30 01:37:35 2015 +0300

----------------------------------------------------------------------
 .../framework/recipes/locks/InterProcessReadWriteLock.java        | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/curator/blob/fc115149/curator-recipes/src/main/java/org/apache/curator/framework/recipes/locks/InterProcessReadWriteLock.java
----------------------------------------------------------------------
diff --git 
a/curator-recipes/src/main/java/org/apache/curator/framework/recipes/locks/InterProcessReadWriteLock.java
 
b/curator-recipes/src/main/java/org/apache/curator/framework/recipes/locks/InterProcessReadWriteLock.java
index 3a0dc44..57af212 100644
--- 
a/curator-recipes/src/main/java/org/apache/curator/framework/recipes/locks/InterProcessReadWriteLock.java
+++ 
b/curator-recipes/src/main/java/org/apache/curator/framework/recipes/locks/InterProcessReadWriteLock.java
@@ -193,7 +193,7 @@ public class InterProcessReadWriteLock
 
         int         index = 0;
         int         firstWriteIndex = Integer.MAX_VALUE;
-        int         ourIndex = Integer.MAX_VALUE;
+        int         ourIndex = -1;
         for ( String node : children )
         {
             if ( node.contains(WRITE_LOCK_NAME) )
@@ -208,6 +208,7 @@ public class InterProcessReadWriteLock
 
             ++index;
         }
+
         StandardLockInternalsDriver.validateOurIndex(sequenceNodeName, 
ourIndex);
 
         boolean     getsTheLock = (ourIndex < firstWriteIndex);

Reply via email to