rerere: un-nest merge() further
By consistently using "upon failure, set 'ret' and jump to out" pattern, flatten the function further. Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
12
rerere.c
12
rerere.c
@ -580,6 +580,7 @@ int rerere_remaining(struct string_list *merge_rr)
|
||||
*/
|
||||
static int merge(const struct rerere_id *id, const char *path)
|
||||
{
|
||||
FILE *f;
|
||||
int ret;
|
||||
mmfile_t cur = {NULL, 0}, base = {NULL, 0}, other = {NULL, 0};
|
||||
mmbuffer_t result = {NULL, 0};
|
||||
@ -588,8 +589,10 @@ static int merge(const struct rerere_id *id, const char *path)
|
||||
* Normalize the conflicts in path and write it out to
|
||||
* "thisimage" temporary file.
|
||||
*/
|
||||
if (handle_file(path, NULL, rerere_path(id, "thisimage")) < 0)
|
||||
return 1;
|
||||
if (handle_file(path, NULL, rerere_path(id, "thisimage")) < 0) {
|
||||
ret = 1;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (read_mmfile(&cur, rerere_path(id, "thisimage")) ||
|
||||
read_mmfile(&base, rerere_path(id, "preimage")) ||
|
||||
@ -603,8 +606,8 @@ static int merge(const struct rerere_id *id, const char *path)
|
||||
* low-level merge driver settings.
|
||||
*/
|
||||
ret = ll_merge(&result, path, &base, NULL, &cur, "", &other, "", NULL);
|
||||
if (!ret) {
|
||||
FILE *f;
|
||||
if (ret)
|
||||
goto out;
|
||||
|
||||
/*
|
||||
* A successful replay of recorded resolution.
|
||||
@ -625,7 +628,6 @@ static int merge(const struct rerere_id *id, const char *path)
|
||||
if (fclose(f))
|
||||
return error("Writing %s failed: %s", path,
|
||||
strerror(errno));
|
||||
}
|
||||
|
||||
out:
|
||||
free(cur.ptr);
|
||||
|
Reference in New Issue
Block a user