khash: avoid using `kh_del` directly
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
diff --git a/src/cache.c b/src/cache.c
index 89c46ef..965fc0c 100644
--- a/src/cache.c
+++ b/src/cache.c
@@ -134,7 +134,7 @@ static void cache_evict_entries(git_cache *cache)
evicted_memory += evict->size;
git_cached_obj_decref(evict);
- kh_del(oid, cache->map, pos);
+ git_oidmap_delete_at(cache->map, pos);
}
}
diff --git a/src/oidmap.h b/src/oidmap.h
index 4fab99a..8eb8e28 100644
--- a/src/oidmap.h
+++ b/src/oidmap.h
@@ -39,8 +39,9 @@ GIT_INLINE(khint_t) git_oidmap_hash(const git_oid *oid)
#define git_oidmap_exists(h, k) (kh_get(oid, h, k) != kh_end(h))
#define git_oidmap_has_data(h, idx) kh_exist(h, idx)
-#define git_oidmap_key(h, idx) kh_key(h, idx)
-#define git_oidmap_value_at(h, idx) kh_val(h, idx)
+#define git_oidmap_key(h, idx) kh_key(h, idx)
+#define git_oidmap_value_at(h, idx) kh_val(h, idx)
+#define git_oidmap_delete_at(h, idx) kh_del(oid, h, idx)
#define git_oidmap_insert(h, key, val, rval) do { \
khiter_t __pos = kh_put(oid, h, key, &rval); \
diff --git a/src/pack.c b/src/pack.c
index 4c2b9eb..fe4a65c 100644
--- a/src/pack.c
+++ b/src/pack.c
@@ -137,7 +137,7 @@ static void free_lowest_entry(git_pack_cache *cache)
git_offmap_foreach(cache->entries, k, entry, {
if (entry && entry->refcount.val == 0) {
cache->memory_used -= entry->raw.len;
- kh_del(off, cache->entries, k);
+ git_offmap_delete_at(cache->entries, k);
free_cache_object(entry);
}
});