typedef struct {
git_oidmap *map;
- git_mutex lock;
- int64_t used_memory;
+ git_rwlock lock;
+ ssize_t used_memory;
} git_cache;
extern bool git_cache__enabled;
-extern int64_t git_cache__max_storage;
-extern git_atomic64 git_cache__current_storage;
+extern ssize_t git_cache__max_storage;
+extern git_atomic_ssize git_cache__current_storage;
int git_cache_set_max_object_size(git_otype type, size_t size);
int git_cache_init(git_cache *cache);
void git_cache_free(git_cache *cache);
+void git_cache_clear(git_cache *cache);
void *git_cache_store_raw(git_cache *cache, git_odb_object *entry);
void *git_cache_store_parsed(git_cache *cache, git_object *entry);