Browse Source

filter_refs(): do not check the same sought_pos twice

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@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Michael Haggerty 13 years ago committed by Junio C Hamano
parent
commit
382a967114
  1. 2
      builtin/fetch-pack.c

2
builtin/fetch-pack.c

@ -565,8 +565,8 @@ static void filter_refs(struct ref **refs, struct string_list *sought) @@ -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 */

Loading…
Cancel
Save