scalar-delete: do not 'die()' in 'delete_enlistment()'
Rather than exiting with 'die()' when 'delete_enlistment()' encounters an error, return an error code with the appropriate message. There's no need for an abrupt exit with 'die()' in 'delete_enlistment()' because its only caller ('cmd_delete()') properly cleans up allocated resources and returns the 'delete_enlistment()' return value as its own exit code. Signed-off-by: Victoria Dye <vdye@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
d2a79bc953
commit
9b24bb9205
@ -407,7 +407,7 @@ static int delete_enlistment(struct strbuf *enlistment)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (unregister_dir())
|
if (unregister_dir())
|
||||||
die(_("failed to unregister repository"));
|
return error(_("failed to unregister repository"));
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
/*
|
/*
|
||||||
@ -418,13 +418,16 @@ static int delete_enlistment(struct strbuf *enlistment)
|
|||||||
path_sep = find_last_dir_sep(enlistment->buf + offset);
|
path_sep = find_last_dir_sep(enlistment->buf + offset);
|
||||||
strbuf_add(&parent, enlistment->buf,
|
strbuf_add(&parent, enlistment->buf,
|
||||||
path_sep ? path_sep - enlistment->buf : offset);
|
path_sep ? path_sep - enlistment->buf : offset);
|
||||||
if (chdir(parent.buf) < 0)
|
if (chdir(parent.buf) < 0) {
|
||||||
die_errno(_("could not switch to '%s'"), parent.buf);
|
int res = error_errno(_("could not switch to '%s'"), parent.buf);
|
||||||
|
strbuf_release(&parent);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
strbuf_release(&parent);
|
strbuf_release(&parent);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (remove_dir_recursively(enlistment, 0))
|
if (remove_dir_recursively(enlistment, 0))
|
||||||
die(_("failed to delete enlistment directory"));
|
return error(_("failed to delete enlistment directory"));
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user