cache-tree: wrap the_index based wrappers with #ifdef
This puts update_main_cache_tree() and write_cache_as_tree() in the same group of "index compat" functions that assume the_index implicitly, which should only be used within builtin/ or t/helper. sequencer.c is also updated to not use these functions. As of now, no files outside builtin/ use these functions anymore. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
ff7fe37b05
commit
07096c9696
12
cache-tree.c
12
cache-tree.c
@ -652,11 +652,6 @@ out:
|
||||
return ret;
|
||||
}
|
||||
|
||||
int write_cache_as_tree(struct object_id *oid, int flags, const char *prefix)
|
||||
{
|
||||
return write_index_as_tree(oid, &the_index, get_index_file(), flags, prefix);
|
||||
}
|
||||
|
||||
static void prime_cache_tree_rec(struct cache_tree *it, struct tree *tree)
|
||||
{
|
||||
struct tree_desc desc;
|
||||
@ -723,10 +718,3 @@ int cache_tree_matches_traversal(struct cache_tree *root,
|
||||
return it->entry_count;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int update_main_cache_tree(int flags)
|
||||
{
|
||||
if (!the_index.cache_tree)
|
||||
the_index.cache_tree = cache_tree();
|
||||
return cache_tree_update(&the_index, flags);
|
||||
}
|
||||
|
17
cache-tree.h
17
cache-tree.h
@ -33,8 +33,6 @@ struct cache_tree *cache_tree_read(const char *buffer, unsigned long size);
|
||||
int cache_tree_fully_valid(struct cache_tree *);
|
||||
int cache_tree_update(struct index_state *, int);
|
||||
|
||||
int update_main_cache_tree(int);
|
||||
|
||||
/* bitmasks to write_cache_as_tree flags */
|
||||
#define WRITE_TREE_MISSING_OK 1
|
||||
#define WRITE_TREE_IGNORE_CACHE_TREE 2
|
||||
@ -48,9 +46,22 @@ int update_main_cache_tree(int);
|
||||
#define WRITE_TREE_PREFIX_ERROR (-3)
|
||||
|
||||
int write_index_as_tree(struct object_id *oid, struct index_state *index_state, const char *index_path, int flags, const char *prefix);
|
||||
int write_cache_as_tree(struct object_id *oid, int flags, const char *prefix);
|
||||
void prime_cache_tree(struct index_state *, struct tree *);
|
||||
|
||||
int cache_tree_matches_traversal(struct cache_tree *, struct name_entry *ent, struct traverse_info *info);
|
||||
|
||||
#ifndef NO_THE_INDEX_COMPATIBILITY_MACROS
|
||||
static inline int write_cache_as_tree(struct object_id *oid, int flags, const char *prefix)
|
||||
{
|
||||
return write_index_as_tree(oid, &the_index, get_index_file(), flags, prefix);
|
||||
}
|
||||
|
||||
static inline int update_main_cache_tree(int flags)
|
||||
{
|
||||
if (!the_index.cache_tree)
|
||||
the_index.cache_tree = cache_tree();
|
||||
return cache_tree_update(&the_index, flags);
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@ -1244,7 +1244,7 @@ static int try_to_commit(struct strbuf *msg, const char *author,
|
||||
commit_list_insert(current_head, &parents);
|
||||
}
|
||||
|
||||
if (write_cache_as_tree(&tree, 0, NULL)) {
|
||||
if (write_index_as_tree(&tree, &the_index, get_index_file(), 0, NULL)) {
|
||||
res = error(_("git write-tree failed to write a tree"));
|
||||
goto out;
|
||||
}
|
||||
@ -1630,7 +1630,7 @@ static int do_pick_commit(enum todo_command command, struct commit *commit,
|
||||
* that represents the "current" state for merge-recursive
|
||||
* to work on.
|
||||
*/
|
||||
if (write_cache_as_tree(&head, 0, NULL))
|
||||
if (write_index_as_tree(&head, &the_index, get_index_file(), 0, NULL))
|
||||
return error(_("your index file is unmerged."));
|
||||
} else {
|
||||
unborn = get_oid("HEAD", &head);
|
||||
|
Loading…
Reference in New Issue
Block a user