]> git.proxmox.com Git - libgit2.git/commitdiff
khash: use `git_map_exists` where applicable
authorPatrick Steinhardt <ps@pks.im>
Wed, 25 Jan 2017 13:11:42 +0000 (14:11 +0100)
committerPatrick Steinhardt <ps@pks.im>
Fri, 17 Feb 2017 10:41:06 +0000 (11:41 +0100)
src/indexer.c
src/odb_mempack.c
src/oidmap.h
src/pack-objects.c
src/pack.c

index 8b5fa6efdea22940245d08438e6352a44248c639..b5d5fd0d2479eef4571a9a3f66e72b29b2280335 100644 (file)
@@ -333,9 +333,7 @@ on_error:
 
 GIT_INLINE(bool) has_entry(git_indexer *idx, git_oid *id)
 {
-       khiter_t k;
-       k = kh_get(oid, idx->pack->idx_cache, id);
-       return (k != kh_end(idx->pack->idx_cache));
+       return git_oidmap_exists(idx->pack->idx_cache, id);
 }
 
 static int save_entry(git_indexer *idx, struct entry *entry, struct git_pack_entry *pentry, git_off_t entry_start)
index b9bdf0bb59baa5ae4025f6b7a13d22714845c1be..6aa9ad89a0a23f0d0640251bf18c670ab9537a10 100644 (file)
@@ -72,13 +72,8 @@ static int impl__write(git_odb_backend *_backend, const git_oid *oid, const void
 static int impl__exists(git_odb_backend *backend, const git_oid *oid)
 {
        struct memory_packer_db *db = (struct memory_packer_db *)backend;
-       khiter_t pos;
-
-       pos = kh_get(oid, db->objects, oid);
-       if (pos != kh_end(db->objects))
-               return 1;
 
-       return 0;
+       return git_oidmap_exists(db->objects, oid);
 }
 
 static int impl__read(void **buffer_p, size_t *len_p, git_otype *type_p, git_odb_backend *backend, const git_oid *oid)
index 2cf208f539256267ffbed7a575a4704860958978..5364862d20db9848b17c8ed4185748d7c2b2aedb 100644 (file)
@@ -36,6 +36,8 @@ GIT_INLINE(khint_t) git_oidmap_hash(const git_oid *oid)
 #define git_oidmap_lookup_index(h, k) kh_get(oid, h, k)
 #define git_oidmap_valid_index(h, idx) (idx != kh_end(h))
 
+#define git_oidmap_exists(h, k) (kh_get(oid, h, k) != kh_end(h))
+
 #define git_oidmap_value_at(h, idx) kh_val(h, idx)
 
 #define git_oidmap_insert(h, key, val, rval) do { \
index 2e5de98ab7721116337cb29d690dc6cff55be955..203816710f83951eddd24baebaed3336eda20af2 100644 (file)
@@ -216,8 +216,7 @@ int git_packbuilder_insert(git_packbuilder *pb, const git_oid *oid,
 
        /* If the object already exists in the hash table, then we don't
         * have any work to do */
-       pos = kh_get(oid, pb->object_ix, oid);
-       if (pos != kh_end(pb->object_ix))
+       if (git_oidmap_exists(pb->object_ix, oid))
                return 0;
 
        if (pb->nr_objects >= pb->nr_alloc) {
index 0f2fa5cddfa1bf800ea885bf19f19b1220c4d01f..8a204342d980fb919226adda681b0774dc630171 100644 (file)
@@ -164,7 +164,7 @@ static int cache_add(
                        return -1;
                }
                /* Add it to the cache if nobody else has */
-               exists = kh_get(off, cache->entries, offset) != kh_end(cache->entries);
+               exists = git_offmap_exists(cache->entries, offset);
                if (!exists) {
                        while (cache->memory_used + base->len > cache->memory_limit)
                                free_lowest_entry(cache);