summaryrefslogtreecommitdiffstats
path: root/gerrit-server
diff options
context:
space:
mode:
authorEdwin Kempin <edwin.kempin@gmail.com>2013-10-05 07:29:05 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2013-10-05 07:29:06 +0000
commitac3ba6aad5dccfd16c539932e901f95068a4d276 (patch)
treef585d3af23b0f73c8675bc7996c25083a2c206e2 /gerrit-server
parent1a8ce59b6a95f17176477d453c74d19666392308 (diff)
parent7b254e51df2e57842487b13cf7d03b80bd737d5f (diff)
Merge "Skip non-commits when verifying access for 'add branch' operation" into stable-2.6
Diffstat (limited to 'gerrit-server')
-rw-r--r--gerrit-server/src/main/java/com/google/gerrit/server/project/ProjectControl.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/project/ProjectControl.java b/gerrit-server/src/main/java/com/google/gerrit/server/project/ProjectControl.java
index 937f84362c..a50d33dbd5 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/project/ProjectControl.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/project/ProjectControl.java
@@ -40,6 +40,7 @@ import com.google.inject.Inject;
import com.google.inject.Provider;
import com.google.inject.assistedinject.Assisted;
+import org.eclipse.jgit.errors.IncorrectObjectTypeException;
import org.eclipse.jgit.lib.Ref;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.revwalk.RevCommit;
@@ -468,7 +469,12 @@ public class ProjectControl {
Repository repo = repoManager.openRepository(projName);
try {
for (Entry<String, Ref> entry : repo.getAllRefs().entrySet()) {
- RevCommit tip = rw.parseCommit(entry.getValue().getObjectId());
+ RevCommit tip;
+ try {
+ tip = rw.parseCommit(entry.getValue().getObjectId());
+ } catch (IncorrectObjectTypeException e) {
+ continue;
+ }
if (rw.isMergedInto(commit, tip)
&& controlForRef(entry.getKey()).canPerform(Permission.READ)) {
return true;