summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Felipe Contreras <felipe.contreras@gmail.com>2019-06-03 21:13:29 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2019-06-04 11:28:58 -0700
commit9528b80b1a269540e12c95346f0c4b06a27dc37c (patch)
tree60b88a6ecce92d82c831e06f343804cd9bdb4fca
parentfetch: trivial cleanup (diff)
downloadtgif-9528b80b1a269540e12c95346f0c4b06a27dc37c.tar.xz
fetch: make the code more understandable
The comment makes it seem as if the condition is the other way around. The exception is when the oid is null, so check for that. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--builtin/fetch.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/builtin/fetch.c b/builtin/fetch.c
index 547b25d206..0bf8fa7030 100644
--- a/builtin/fetch.c
+++ b/builtin/fetch.c
@@ -366,19 +366,21 @@ static void find_non_local_tags(const struct ref *refs,
*/
for_each_string_list_item(remote_ref_item, &remote_refs_list) {
const char *refname = remote_ref_item->string;
+ struct ref *rm;
item = hashmap_get_from_hash(&remote_refs, strhash(refname), refname);
if (!item)
BUG("unseen remote ref?");
/* Unless we have already decided to ignore this item... */
- if (!is_null_oid(&item->oid)) {
- struct ref *rm = alloc_ref(item->refname);
- rm->peer_ref = alloc_ref(item->refname);
- oidcpy(&rm->old_oid, &item->oid);
- **tail = rm;
- *tail = &rm->next;
- }
+ if (is_null_oid(&item->oid))
+ continue;
+
+ rm = alloc_ref(item->refname);
+ rm->peer_ref = alloc_ref(item->refname);
+ oidcpy(&rm->old_oid, &item->oid);
+ **tail = rm;
+ *tail = &rm->next;
}
hashmap_free(&remote_refs, 1);
string_list_clear(&remote_refs_list, 0);