diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/ReftableBatchRefUpdate.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/ReftableBatchRefUpdate.java index 07fd00f14..682e15664 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/ReftableBatchRefUpdate.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/ReftableBatchRefUpdate.java @@ -141,8 +141,7 @@ public class ReftableBatchRefUpdate extends BatchRefUpdate { lock.lock(); try { - Reftable table = refdb.reader(); - if (!checkExpected(table, pending)) { + if (!checkExpected(pending)) { return; } if (!checkConflicting(pending)) { @@ -236,10 +235,10 @@ public class ReftableBatchRefUpdate extends BatchRefUpdate { return ok; } - private boolean checkExpected(Reftable table, List pending) + private boolean checkExpected(List pending) throws IOException { for (ReceiveCommand cmd : pending) { - if (!matchOld(cmd, table.exactRef(cmd.getRefName()))) { + if (!matchOld(cmd, refdb.exactRef(cmd.getRefName()))) { cmd.setResult(LOCK_FAILURE); if (isAtomic()) { ReceiveCommand.abort(pending);