Once a match has been found at sought_pos, the entry is zeroed and no future attempts will match that entry. So increment sought_pos to avoid checking against the zeroed-out entry during the next iteration. Signed-off-by: Michael Haggerty <mhagger@xxxxxxxxxxxx> --- builtin/fetch-pack.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builtin/fetch-pack.c b/builtin/fetch-pack.c index df81995..63d455f 100644 --- a/builtin/fetch-pack.c +++ b/builtin/fetch-pack.c @@ -565,8 +565,8 @@ static void filter_refs(struct ref **refs, struct string_list *sought) if (cmp < 0) /* definitely do not have it */ break; else if (cmp == 0) { /* definitely have it */ - sought->items[sought_pos].string[0] = '\0'; return_refs[sought_pos] = ref; + sought->items[sought_pos++].string[0] = '\0'; break; } else /* might have it; keep looking */ -- 1.7.11.3 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html