Merge branch 'ly/sequencer-rearrange-leakfix'
Leakfix. * ly/sequencer-rearrange-leakfix: sequencer: fix memory leak if `todo_list_rearrange_squash()` failedmaint
commit
6261489cdb
|
@ -6594,6 +6594,7 @@ int todo_list_rearrange_squash(struct todo_list *todo_list)
|
||||||
char **subjects;
|
char **subjects;
|
||||||
struct commit_todo_item commit_todo;
|
struct commit_todo_item commit_todo;
|
||||||
struct todo_item *items = NULL;
|
struct todo_item *items = NULL;
|
||||||
|
int ret = 0;
|
||||||
|
|
||||||
init_commit_todo_item(&commit_todo);
|
init_commit_todo_item(&commit_todo);
|
||||||
/*
|
/*
|
||||||
|
@ -6624,8 +6625,8 @@ int todo_list_rearrange_squash(struct todo_list *todo_list)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_fixup(item->command)) {
|
if (is_fixup(item->command)) {
|
||||||
clear_commit_todo_item(&commit_todo);
|
ret = error(_("the script was already rearranged."));
|
||||||
return error(_("the script was already rearranged."));
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
repo_parse_commit(the_repository, item->commit);
|
repo_parse_commit(the_repository, item->commit);
|
||||||
|
@ -6727,6 +6728,7 @@ int todo_list_rearrange_squash(struct todo_list *todo_list)
|
||||||
todo_list->items = items;
|
todo_list->items = items;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cleanup:
|
||||||
free(next);
|
free(next);
|
||||||
free(tail);
|
free(tail);
|
||||||
for (i = 0; i < todo_list->nr; i++)
|
for (i = 0; i < todo_list->nr; i++)
|
||||||
|
@ -6736,7 +6738,7 @@ int todo_list_rearrange_squash(struct todo_list *todo_list)
|
||||||
|
|
||||||
clear_commit_todo_item(&commit_todo);
|
clear_commit_todo_item(&commit_todo);
|
||||||
|
|
||||||
return 0;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
int sequencer_determine_whence(struct repository *r, enum commit_whence *whence)
|
int sequencer_determine_whence(struct repository *r, enum commit_whence *whence)
|
||||||
|
|
Loading…
Reference in New Issue