summaryrefslogtreecommitdiff
path: root/commit.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2014-01-10 18:33:45 (GMT)
committerJunio C Hamano <gitster@pobox.com>2014-01-10 18:33:45 (GMT)
commit4243b2d1e45a8d0d9b1ccc9d860235e7b9543a7f (patch)
tree30a290c6a782b9717fcf5cf192800693094a6579 /commit.c
parent2b2849765f2a0c712e5539badfcbf8ec0639ebec (diff)
parent6bc76725eaa2f4bb8c5fad47f843425d9160e7f3 (diff)
downloadgit-4243b2d1e45a8d0d9b1ccc9d860235e7b9543a7f.zip
git-4243b2d1e45a8d0d9b1ccc9d860235e7b9543a7f.tar.gz
git-4243b2d1e45a8d0d9b1ccc9d860235e7b9543a7f.tar.bz2
Merge branch 'vm/octopus-merge-bases-simplify'
* vm/octopus-merge-bases-simplify: get_octopus_merge_bases(): cleanup redundant variable
Diffstat (limited to 'commit.c')
-rw-r--r--commit.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/commit.c b/commit.c
index b9f9838..6bf4fe0 100644
--- a/commit.c
+++ b/commit.c
@@ -841,26 +841,26 @@ static struct commit_list *merge_bases_many(struct commit *one, int n, struct co
struct commit_list *get_octopus_merge_bases(struct commit_list *in)
{
struct commit_list *i, *j, *k, *ret = NULL;
- struct commit_list **pptr = &ret;
- for (i = in; i; i = i->next) {
- if (!ret)
- pptr = &commit_list_insert(i->item, pptr)->next;
- else {
- struct commit_list *new = NULL, *end = NULL;
-
- for (j = ret; j; j = j->next) {
- struct commit_list *bases;
- bases = get_merge_bases(i->item, j->item, 1);
- if (!new)
- new = bases;
- else
- end->next = bases;
- for (k = bases; k; k = k->next)
- end = k;
- }
- ret = new;
+ if (!in)
+ return ret;
+
+ commit_list_insert(in->item, &ret);
+
+ for (i = in->next; i; i = i->next) {
+ struct commit_list *new = NULL, *end = NULL;
+
+ for (j = ret; j; j = j->next) {
+ struct commit_list *bases;
+ bases = get_merge_bases(i->item, j->item, 1);
+ if (!new)
+ new = bases;
+ else
+ end->next = bases;
+ for (k = bases; k; k = k->next)
+ end = k;
}
+ ret = new;
}
return ret;
}