From: Junio C Hamano Date: Sun, 16 Nov 2008 08:10:25 +0000 (-0800) Subject: Teach ls-files --with-tree= to work with options other than -c X-Git-Tag: v1.6.1-rc1~7^2~2 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=4b4e26d21f77d9e90125ca1c8f48592a9cd6f543;p=git.git Teach ls-files --with-tree= to work with options other than -c Originally --with-tree= was designed for the sole purpose of checking if a given pathspec makes sense as a parameter to git-commit using it in conjunction with --error-unmatch. It had logic to avoid showing the same entry (one came from the original index, another from the overlayed tree) twice so that it works with -c (i.e. "show-cached"), but otherwise it was not designed to work with the flags such as -m, -d, etc. This teaches the same logic to cover the codepath for -m and -d. Signed-off-by: Junio C Hamano --- diff --git a/builtin-ls-files.c b/builtin-ls-files.c index 21b0bf75f..f72eb8547 100644 --- a/builtin-ls-files.c +++ b/builtin-ls-files.c @@ -227,6 +227,8 @@ static void show_files(struct dir_struct *dir, const char *prefix) int dtype = ce_to_dtype(ce); if (excluded(dir, ce->name, &dtype) != dir->show_ignored) continue; + if (ce->ce_flags & CE_UPDATE) + continue; err = lstat(ce->name, &st); if (show_deleted && err) show_ce_entry(tag_removed, ce);