plug a few leaks in revision walking used in describe.
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
80dbae03b0
commit
94d23673e3
@ -183,6 +183,7 @@ static void describe(const char *arg, int last_one)
|
|||||||
cur_match->depth++;
|
cur_match->depth++;
|
||||||
if (!min_match || cur_match->depth < min_match->depth)
|
if (!min_match || cur_match->depth < min_match->depth)
|
||||||
min_match = cur_match;
|
min_match = cur_match;
|
||||||
|
free_commit_list(revs.commits);
|
||||||
}
|
}
|
||||||
printf("%s-g%s\n", min_match->name->path,
|
printf("%s-g%s\n", min_match->name->path,
|
||||||
find_unique_abbrev(cmit->object.sha1, abbrev));
|
find_unique_abbrev(cmit->object.sha1, abbrev));
|
||||||
|
@ -1121,21 +1121,23 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch
|
|||||||
void prepare_revision_walk(struct rev_info *revs)
|
void prepare_revision_walk(struct rev_info *revs)
|
||||||
{
|
{
|
||||||
int nr = revs->pending.nr;
|
int nr = revs->pending.nr;
|
||||||
struct object_array_entry *list = revs->pending.objects;
|
struct object_array_entry *e, *list;
|
||||||
|
|
||||||
|
e = list = revs->pending.objects;
|
||||||
revs->pending.nr = 0;
|
revs->pending.nr = 0;
|
||||||
revs->pending.alloc = 0;
|
revs->pending.alloc = 0;
|
||||||
revs->pending.objects = NULL;
|
revs->pending.objects = NULL;
|
||||||
while (--nr >= 0) {
|
while (--nr >= 0) {
|
||||||
struct commit *commit = handle_commit(revs, list->item, list->name);
|
struct commit *commit = handle_commit(revs, e->item, e->name);
|
||||||
if (commit) {
|
if (commit) {
|
||||||
if (!(commit->object.flags & SEEN)) {
|
if (!(commit->object.flags & SEEN)) {
|
||||||
commit->object.flags |= SEEN;
|
commit->object.flags |= SEEN;
|
||||||
insert_by_date(commit, &revs->commits);
|
insert_by_date(commit, &revs->commits);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
list++;
|
e++;
|
||||||
}
|
}
|
||||||
|
free(list);
|
||||||
|
|
||||||
if (revs->no_walk)
|
if (revs->no_walk)
|
||||||
return;
|
return;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user