transport: do not list refs if possible
[gitweb.git] / fetch-pack.c
index 88a078e9befd281cf5f03e9e64615b14ca768a35..15652b47762d131d22814ac122a7e216eda8164c 100644 (file)
@@ -599,7 +599,7 @@ static void filter_refs(struct fetch_pack_args *args,
                        continue;
                if (parse_oid_hex(ref->name, &oid, &p) ||
                    *p != '\0' ||
-                   oidcmp(&oid, &ref->old_oid))
+                   !oideq(&oid, &ref->old_oid))
                        continue;
 
                if ((allow_unadvertised_object_request &
@@ -1598,7 +1598,7 @@ struct ref *fetch_pack(struct fetch_pack_args *args,
        if (nr_sought)
                nr_sought = remove_duplicates_in_refs(sought, nr_sought);
 
-       if (!ref) {
+       if (version != protocol_v2 && !ref) {
                packet_flush(fd[1]);
                die(_("no matching remote head"));
        }