diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java index 86ec65356..63fa503b1 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java @@ -499,6 +499,9 @@ private ObjectId processHaveLines(List peerHas, ObjectId last) wantAll.add(obj); } + if (!(obj instanceof RevCommit)) + obj.add(SATISFIED); + if (obj instanceof RevTag) { RevObject target = walk.peel(obj); if (target instanceof RevCommit) { @@ -601,11 +604,6 @@ private boolean wantSatisfied(final RevObject want) throws IOException { if (want.has(SATISFIED)) return true; - if (!(want instanceof RevCommit)) { - want.add(SATISFIED); - return true; - } - walk.resetRetain(SAVE); walk.markStart((RevCommit) want); for (;;) {