dotdot = strstr(arg, "..");
if (dotdot) {
unsigned char from_sha1[20];
- char *next = dotdot + 2;
+ const char *next = dotdot + 2;
+ const char *this = arg;
*dotdot = 0;
if (!*next)
next = "HEAD";
- if (!get_sha1(arg, from_sha1) && !get_sha1(next, sha1)) {
+ if (dotdot == arg)
+ this = "HEAD";
+ if (!get_sha1(this, from_sha1) &&
+ !get_sha1(next, sha1)) {
struct commit *exclude;
struct commit *include;
- exclude = get_commit_reference(revs, arg, from_sha1, flags ^ UNINTERESTING);
+ exclude = get_commit_reference(revs, this, from_sha1, flags ^ UNINTERESTING);
include = get_commit_reference(revs, next, sha1, flags);
if (!exclude || !include)
die("Invalid revision range %s..%s", arg, next);