X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=revision.c;h=f2a9f25fe11f3883281ea5fdd783700056fd5c6e;hb=093b06889104d218e95251176af5cf4aa5dd5cdd;hp=dbd54da5baec5b5a2320a40a66da24541705e971;hpb=34e98ea56414adc5a582e6368e8ec9c109dbee48;p=git.git diff --git a/revision.c b/revision.c index dbd54da5..f2a9f25f 100644 --- a/revision.c +++ b/revision.c @@ -152,6 +152,7 @@ static struct commit *handle_commit(struct rev_info *revs, struct object *object if (parse_commit(commit) < 0) die("unable to parse commit %s", name); if (flags & UNINTERESTING) { + commit->object.flags |= UNINTERESTING; mark_parents_uninteresting(commit); revs->limited = 1; } @@ -751,17 +752,15 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch arg++; } if (get_sha1(arg, sha1) < 0) { - struct stat st; int j; if (seen_dashdash || local_flags) die("bad revision '%s'", arg); /* If we didn't have a "--", all filenames must exist */ - for (j = i; j < argc; j++) { - if (lstat(argv[j], &st) < 0) - die("'%s': %s", argv[j], strerror(errno)); - } + for (j = i; j < argc; j++) + verify_filename(revs->prefix, argv[j]); + revs->prune_data = get_pathspec(revs->prefix, argv + i); break; } @@ -788,7 +787,8 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch } if (revs->combine_merges) { revs->ignore_merges = 0; - if (revs->dense_combined_merges) + if (revs->dense_combined_merges && + (revs->diffopt.output_format != DIFF_FORMAT_DIFFSTAT)) revs->diffopt.output_format = DIFF_FORMAT_PATCH; } revs->diffopt.abbrev = revs->abbrev;