dir: add remove_untracked_cache()

Factor out code into remove_untracked_cache(), which will be used in a later commit. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Christian Couder committed Jan 24, 2016 at 16:28 UTC 07b29bfd8d3de9a16c1c93e285b6980ca6b77b45
3 files changed +11 -5
builtin/update-index.c
+1 -5
@@ -1126,11 +1126,7 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
1126 add_untracked_cache(&the_index);
1127 report(_("Untracked cache enabled for '%s'"), get_git_work_tree());
1128 } else if (untracked_cache == UC_DISABLE) {
1129 - if (the_index.untracked) {
1130 - free_untracked_cache(the_index.untracked);
1131 - the_index.untracked = NULL;
1132 - the_index.cache_changed |= UNTRACKED_CHANGED;
1133 - }
1129 + remove_untracked_cache(&the_index);
1130 report(_("Untracked cache disabled"));
1131 }
1132
dir.c
+9
@@ -1956,6 +1956,15 @@ void add_untracked_cache(struct index_state *istate)
1956 istate->cache_changed |= UNTRACKED_CHANGED;
1957 }
1958
1959 +void remove_untracked_cache(struct index_state *istate)
1960 +{
1961 + if (istate->untracked) {
1962 + free_untracked_cache(istate->untracked);
1963 + istate->untracked = NULL;
1964 + istate->cache_changed |= UNTRACKED_CHANGED;
1965 + }
1966 +}
1967 +
1968 static struct untracked_cache_dir *validate_untracked_cache(struct dir_struct *dir,
1969 int base_len,
1970 const struct pathspec *pathspec)
dir.h
+1
@@ -309,4 +309,5 @@ struct untracked_cache *read_untracked_extension(const void *data, unsigned long
309 void write_untracked_extension(struct strbuf *out, struct untracked_cache *untracked);
310 void add_untracked_ident(struct untracked_cache *);
311 void add_untracked_cache(struct index_state *istate);
312 +void remove_untracked_cache(struct index_state *istate);
313 #endif