read-cache API & users: make discard_index() return void
The discard_index() function has not returned non-zero since
7a51ed66f6
(Make on-disk index representation separate from in-core
one, 2008-01-14), but we've had various code in-tree still acting as
though that might be the case.
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
fbc1ed629e
commit
9c5f3ee3b3
@ -530,8 +530,8 @@ static int get_modified_files(struct repository *r,
|
||||
struct collection_status s = { 0 };
|
||||
int i;
|
||||
|
||||
if (discard_index(r->index) < 0 ||
|
||||
repo_read_index_preload(r, ps, 0) < 0)
|
||||
discard_index(r->index);
|
||||
if (repo_read_index_preload(r, ps, 0) < 0)
|
||||
return error(_("could not read index"));
|
||||
|
||||
prefix_item_list_clear(files);
|
||||
@ -1156,8 +1156,8 @@ int run_add_i(struct repository *r, const struct pathspec *ps)
|
||||
_("staged"), _("unstaged"), _("path"));
|
||||
opts.list_opts.header = header.buf;
|
||||
|
||||
if (discard_index(r->index) < 0 ||
|
||||
repo_read_index(r) < 0 ||
|
||||
discard_index(r->index);
|
||||
if (repo_read_index(r) < 0 ||
|
||||
repo_refresh_and_write_index(r, REFRESH_QUIET, 0, 1,
|
||||
NULL, NULL, NULL) < 0)
|
||||
warning(_("could not refresh index"));
|
||||
|
@ -1750,7 +1750,8 @@ int run_add_p(struct repository *r, enum add_p_mode mode,
|
||||
s.mode = &patch_mode_add;
|
||||
s.revision = revision;
|
||||
|
||||
if (discard_index(r->index) < 0 || repo_read_index(r) < 0 ||
|
||||
discard_index(r->index);
|
||||
if (repo_read_index(r) < 0 ||
|
||||
(!s.mode->index_only &&
|
||||
repo_refresh_and_write_index(r, REFRESH_QUIET, 0, 1,
|
||||
NULL, NULL, NULL) < 0) ||
|
||||
|
@ -390,7 +390,8 @@ static void restore_state(const struct object_id *head,
|
||||
run_command(&cmd);
|
||||
|
||||
refresh_cache:
|
||||
if (discard_cache() < 0 || read_cache() < 0)
|
||||
discard_cache();
|
||||
if (read_cache() < 0)
|
||||
die(_("could not read index"));
|
||||
}
|
||||
|
||||
|
2
cache.h
2
cache.h
@ -774,7 +774,7 @@ void ensure_full_index(struct index_state *istate);
|
||||
*/
|
||||
int write_locked_index(struct index_state *, struct lock_file *lock, unsigned flags);
|
||||
|
||||
int discard_index(struct index_state *);
|
||||
void discard_index(struct index_state *);
|
||||
void move_index_extensions(struct index_state *dst, struct index_state *src);
|
||||
int unmerged_index(const struct index_state *);
|
||||
|
||||
|
@ -2531,7 +2531,7 @@ int is_index_unborn(struct index_state *istate)
|
||||
return (!istate->cache_nr && !istate->timestamp.sec);
|
||||
}
|
||||
|
||||
int discard_index(struct index_state *istate)
|
||||
void discard_index(struct index_state *istate)
|
||||
{
|
||||
/*
|
||||
* Cache entries in istate->cache[] should have been allocated
|
||||
@ -2562,8 +2562,6 @@ int discard_index(struct index_state *istate)
|
||||
mem_pool_discard(istate->ce_mem_pool, should_validate_cache_entries());
|
||||
FREE_AND_NULL(istate->ce_mem_pool);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
|
15
sequencer.c
15
sequencer.c
@ -3564,7 +3564,8 @@ static int do_exec(struct repository *r, const char *command_line)
|
||||
status = run_command(&cmd);
|
||||
|
||||
/* force re-reading of the cache */
|
||||
if (discard_index(r->index) < 0 || repo_read_index(r) < 0)
|
||||
discard_index(r->index);
|
||||
if (repo_read_index(r) < 0)
|
||||
return error(_("could not read index"));
|
||||
|
||||
dirty = require_clean_work_tree(r, "rebase", NULL, 1, 1);
|
||||
@ -4029,9 +4030,11 @@ static int do_merge(struct repository *r,
|
||||
ret = run_command(&cmd);
|
||||
|
||||
/* force re-reading of the cache */
|
||||
if (!ret && (discard_index(r->index) < 0 ||
|
||||
repo_read_index(r) < 0))
|
||||
ret = error(_("could not read index"));
|
||||
if (!ret) {
|
||||
discard_index(r->index);
|
||||
if (repo_read_index(r) < 0)
|
||||
ret = error(_("could not read index"));
|
||||
}
|
||||
goto leave_merge;
|
||||
}
|
||||
|
||||
@ -4404,8 +4407,8 @@ void create_autostash(struct repository *r, const char *path)
|
||||
printf(_("Created autostash: %s\n"), buf.buf);
|
||||
if (reset_head(r, &ropts) < 0)
|
||||
die(_("could not reset --hard"));
|
||||
if (discard_index(r->index) < 0 ||
|
||||
repo_read_index(r) < 0)
|
||||
discard_index(r->index);
|
||||
if (repo_read_index(r) < 0)
|
||||
die(_("could not read index"));
|
||||
}
|
||||
strbuf_release(&buf);
|
||||
|
Loading…
Reference in New Issue
Block a user