summaryrefslogtreecommitdiff
path: root/cache.h
diff options
context:
space:
mode:
authorLibravatar Matheus Tavares <matheus.bernardino@usp.br>2021-05-04 13:27:28 -0300
committerLibravatar Junio C Hamano <gitster@pobox.com>2021-05-05 12:25:25 +0900
commit96168827802b08c4adf2a036594ab235b2c5630f (patch)
treeb1d6fc3ba702f01f3747a0beea7a6e4adc8a6d1e /cache.h
parentparallel-checkout: add design documentation (diff)
downloadtgif-96168827802b08c4adf2a036594ab235b2c5630f.tar.xz
make_transient_cache_entry(): optionally alloc from mem_pool
Allow make_transient_cache_entry() to optionally receive a mem_pool struct in which it should allocate the entry. This will be used in the following patch, to store some transient entries which should persist until parallel checkout finishes. Signed-off-by: Matheus Tavares <matheus.bernardino@usp.br> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'cache.h')
-rw-r--r--cache.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/cache.h b/cache.h
index 148d9ab5f1..d6dab6c87f 100644
--- a/cache.h
+++ b/cache.h
@@ -356,16 +356,20 @@ struct cache_entry *make_empty_cache_entry(struct index_state *istate,
size_t name_len);
/*
- * Create a cache_entry that is not intended to be added to an index.
- * Caller is responsible for discarding the cache_entry
- * with `discard_cache_entry`.
+ * Create a cache_entry that is not intended to be added to an index. If
+ * `ce_mem_pool` is not NULL, the entry is allocated within the given memory
+ * pool. Caller is responsible for discarding "loose" entries with
+ * `discard_cache_entry()` and the memory pool with
+ * `mem_pool_discard(ce_mem_pool, should_validate_cache_entries())`.
*/
struct cache_entry *make_transient_cache_entry(unsigned int mode,
const struct object_id *oid,
const char *path,
- int stage);
+ int stage,
+ struct mem_pool *ce_mem_pool);
-struct cache_entry *make_empty_transient_cache_entry(size_t name_len);
+struct cache_entry *make_empty_transient_cache_entry(size_t len,
+ struct mem_pool *ce_mem_pool);
/*
* Discard cache entry.