Merge branch 'tt/bisect-in-c'

More code in "git bisect" has been rewritten in C.

* tt/bisect-in-c:
  bisect--helper: `bisect_start` shell function partially in C
  bisect--helper: `get_terms` & `bisect_terms` shell function in C
  bisect--helper: `bisect_next_check` shell function in C
  bisect--helper: `check_and_set_terms` shell function in C
  wrapper: move is_empty_file() and rename it as is_empty_or_missing_file()
  bisect--helper: `bisect_write` shell function in C
  bisect--helper: `bisect_reset` shell function in C
This commit is contained in:
Junio C Hamano
2019-02-06 22:05:22 -08:00
6 changed files with 595 additions and 320 deletions

View File

@ -34,22 +34,6 @@
#include "packfile.h"
#include "repository.h"
/**
* Returns 1 if the file is empty or does not exist, 0 otherwise.
*/
static int is_empty_file(const char *filename)
{
struct stat st;
if (stat(filename, &st) < 0) {
if (errno == ENOENT)
return 1;
die_errno(_("could not stat %s"), filename);
}
return !st.st_size;
}
/**
* Returns the length of the first line of msg.
*/
@ -1220,7 +1204,7 @@ static int parse_mail(struct am_state *state, const char *mail)
goto finish;
}
if (is_empty_file(am_path(state, "patch"))) {
if (is_empty_or_missing_file(am_path(state, "patch"))) {
printf_ln(_("Patch is empty."));
die_user_resolve(state);
}
@ -1803,7 +1787,7 @@ next:
resume = 0;
}
if (!is_empty_file(am_path(state, "rewritten"))) {
if (!is_empty_or_missing_file(am_path(state, "rewritten"))) {
assert(state->rebasing);
copy_notes_for_rebase(state);
run_post_rewrite_hook(state);