rev-parse: make "whatchanged -- git-fetch-script" work again.
authorJunio C Hamano <junkio@cox.net>
Fri, 27 Jan 2006 01:24:52 +0000 (17:24 -0800)
committerJunio C Hamano <junkio@cox.net>
Sat, 28 Jan 2006 08:09:58 +0000 (00:09 -0800)
The latest update to avoid misspelled revs interfered when we
were not interested in parsing non flags or arguments not meant
for rev-list.  This makes these two forms work again:

git whatchanged -- git-fetch-script

We could enable "!def" in the part this change touches to make
the above work without '--', but then it would cause misspelled
v2.6.14..v2.6.16 to be given to diff-tree and defeats the whole
point of the previous fix.

Signed-off-by: Junio C Hamano <junkio@cox.net>
rev-parse.c

index 7abad35..9567b0f 100644 (file)
@@ -294,7 +294,9 @@ int main(int argc, char **argv)
                }
                if (verify)
                        die("Needed a single revision");
-               if (lstat(arg, &st) < 0)
+               if ((filter & DO_REVS) &&
+                   (filter & DO_NONFLAGS) && /* !def && */
+                   lstat(arg, &st) < 0)
                        die("'%s': %s", arg, strerror(errno));
                as_is = 1;
                show_file(arg);