http: respect protocol.*.allow=user for http-alternates
[gitweb.git] / patch-ids.c
index bc8a28fdd71ae1476002d26adec64f54841f5cba..a4d00166646d3dc354f3c06e9e75ce7dc3724f6a 100644 (file)
@@ -4,14 +4,14 @@
 #include "sha1-lookup.h"
 #include "patch-ids.h"
 
-static int commit_patch_id(struct commit *commit, struct diff_options *options,
+int commit_patch_id(struct commit *commit, struct diff_options *options,
                    unsigned char *sha1)
 {
        if (commit->parents)
-               diff_tree_sha1(commit->parents->item->object.sha1,
-                              commit->object.sha1, "", options);
+               diff_tree_sha1(commit->parents->item->object.oid.hash,
+                              commit->object.oid.hash, "", options);
        else
-               diff_root_tree_sha1(commit->object.sha1, "", options);
+               diff_root_tree_sha1(commit->object.oid.hash, "", options);
        diffcore_std(options);
        return diff_flush_patch_id(options, sha1);
 }
@@ -83,10 +83,7 @@ static struct patch_id *add_commit(struct commit *commit,
        ent = &bucket->bucket[bucket->nr++];
        hashcpy(ent->patch_id, sha1);
 
-       if (ids->alloc <= ids->nr) {
-               ids->alloc = alloc_nr(ids->nr);
-               ids->table = xrealloc(ids->table, sizeof(ent) * ids->alloc);
-       }
+       ALLOC_GROW(ids->table, ids->nr + 1, ids->alloc);
        if (pos < ids->nr)
                memmove(ids->table + pos + 1, ids->table + pos,
                        sizeof(ent) * (ids->nr - pos));