merge-base: do not leak commit list

Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Junio C Hamano 2007-01-08 23:10:49 -08:00
parent cdd4fb15cf
commit 1295228d1f

View File

@ -1012,7 +1012,7 @@ void sort_in_topological_order_fn(struct commit_list ** list, int lifo,
free(nodes); free(nodes);
} }
/* merge-rebase stuff */ /* merge-base stuff */
/* bits #0..15 in revision.h */ /* bits #0..15 in revision.h */
#define PARENT1 (1u<<16) #define PARENT1 (1u<<16)
@ -1020,6 +1020,8 @@ void sort_in_topological_order_fn(struct commit_list ** list, int lifo,
#define STALE (1u<<18) #define STALE (1u<<18)
#define RESULT (1u<<19) #define RESULT (1u<<19)
static const unsigned all_flags = (PARENT1 | PARENT2 | STALE | RESULT);
static struct commit *interesting(struct commit_list *list) static struct commit *interesting(struct commit_list *list)
{ {
while (list) { while (list) {
@ -1084,6 +1086,7 @@ static struct commit_list *merge_bases(struct commit *one, struct commit *two)
} }
/* Clean up the result to remove stale ones */ /* Clean up the result to remove stale ones */
free_commit_list(list);
list = result; result = NULL; list = result; result = NULL;
while (list) { while (list) {
struct commit_list *n = list->next; struct commit_list *n = list->next;
@ -1099,7 +1102,6 @@ struct commit_list *get_merge_bases(struct commit *one,
struct commit *two, struct commit *two,
int cleanup) int cleanup)
{ {
const unsigned all_flags = (PARENT1 | PARENT2 | STALE | RESULT);
struct commit_list *list; struct commit_list *list;
struct commit **rslt; struct commit **rslt;
struct commit_list *result; struct commit_list *result;