Merge fixes up to GIT 1.1.3
This commit is contained in:
commit
fec9ebf16c
6
commit.c
6
commit.c
@ -359,8 +359,10 @@ void clear_commit_marks(struct commit *commit, unsigned int mark)
|
||||
parents = commit->parents;
|
||||
commit->object.flags &= ~mark;
|
||||
while (parents) {
|
||||
if (parents->item && parents->item->object.parsed)
|
||||
clear_commit_marks(parents->item, mark);
|
||||
struct commit *parent = parents->item;
|
||||
if (parent && parent->object.parsed &&
|
||||
(parent->object.flags & mark))
|
||||
clear_commit_marks(parent, mark);
|
||||
parents = parents->next;
|
||||
}
|
||||
}
|
||||
|
13
describe.c
13
describe.c
@ -98,7 +98,7 @@ static int compare_names(const void *_a, const void *_b)
|
||||
return (a_date > b_date) ? -1 : (a_date == b_date) ? 0 : 1;
|
||||
}
|
||||
|
||||
static void describe(char *arg)
|
||||
static void describe(char *arg, int last_one)
|
||||
{
|
||||
unsigned char sha1[20];
|
||||
struct commit *cmit;
|
||||
@ -132,7 +132,8 @@ static void describe(char *arg)
|
||||
if (n) {
|
||||
printf("%s-g%s\n", n->path,
|
||||
find_unique_abbrev(cmit->object.sha1, abbrev));
|
||||
clear_commit_marks(cmit, SEEN);
|
||||
if (!last_one)
|
||||
clear_commit_marks(cmit, SEEN);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -162,10 +163,12 @@ int main(int argc, char **argv)
|
||||
}
|
||||
|
||||
if (i == argc)
|
||||
describe("HEAD");
|
||||
describe("HEAD", 1);
|
||||
else
|
||||
while (i < argc)
|
||||
describe(argv[i++]);
|
||||
while (i < argc) {
|
||||
describe(argv[i], (i == argc - 1));
|
||||
i++;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user