handle_revision_arg: stop using "dotdot" as a generic pointer
The handle_revision_arg() function has a "dotdot" variable that it uses to find a ".." or "..." in the argument. If we don't find one, we look for other marks, like "^!". But we just keep re-using the "dotdot" variable, which is confusing. Let's introduce a separate "mark" variable that can be used for these other marks. They still reuse the same variable, but at least the name is no longer actively misleading. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
1d6c93817b
commit
f632dedd8d
29
revision.c
29
revision.c
@ -1433,6 +1433,7 @@ int handle_revision_arg(const char *arg_, struct rev_info *revs, int flags, unsi
|
||||
{
|
||||
struct object_context oc;
|
||||
char *dotdot;
|
||||
char *mark;
|
||||
struct object *object;
|
||||
unsigned char sha1[20];
|
||||
int local_flags;
|
||||
@ -1529,33 +1530,33 @@ int handle_revision_arg(const char *arg_, struct rev_info *revs, int flags, unsi
|
||||
*dotdot = '.';
|
||||
}
|
||||
|
||||
dotdot = strstr(arg, "^@");
|
||||
if (dotdot && !dotdot[2]) {
|
||||
*dotdot = 0;
|
||||
mark = strstr(arg, "^@");
|
||||
if (mark && !mark[2]) {
|
||||
*mark = 0;
|
||||
if (add_parents_only(revs, arg, flags, 0))
|
||||
return 0;
|
||||
*dotdot = '^';
|
||||
*mark = '^';
|
||||
}
|
||||
dotdot = strstr(arg, "^!");
|
||||
if (dotdot && !dotdot[2]) {
|
||||
*dotdot = 0;
|
||||
mark = strstr(arg, "^!");
|
||||
if (mark && !mark[2]) {
|
||||
*mark = 0;
|
||||
if (!add_parents_only(revs, arg, flags ^ (UNINTERESTING | BOTTOM), 0))
|
||||
*dotdot = '^';
|
||||
*mark = '^';
|
||||
}
|
||||
dotdot = strstr(arg, "^-");
|
||||
if (dotdot) {
|
||||
mark = strstr(arg, "^-");
|
||||
if (mark) {
|
||||
int exclude_parent = 1;
|
||||
|
||||
if (dotdot[2]) {
|
||||
if (mark[2]) {
|
||||
char *end;
|
||||
exclude_parent = strtoul(dotdot + 2, &end, 10);
|
||||
exclude_parent = strtoul(mark + 2, &end, 10);
|
||||
if (*end != '\0' || !exclude_parent)
|
||||
return -1;
|
||||
}
|
||||
|
||||
*dotdot = 0;
|
||||
*mark = 0;
|
||||
if (!add_parents_only(revs, arg, flags ^ (UNINTERESTING | BOTTOM), exclude_parent))
|
||||
*dotdot = '^';
|
||||
*mark = '^';
|
||||
}
|
||||
|
||||
local_flags = 0;
|
||||
|
Loading…
Reference in New Issue
Block a user