dir.c: make 'git-status --ignored' work within leading directories
commitbe8a84c526691667fc04a8241d93a3de1de298ab
authorKarsten Blees <karsten.blees@gmail.com>
Mon, 15 Apr 2013 19:09:25 +0000 (15 21:09 +0200)
committerJunio C Hamano <gitster@pobox.com>
Mon, 15 Apr 2013 19:33:59 +0000 (15 12:33 -0700)
tree52948c528878307c7ebc8c07b65c2e5f9a569bbf
parentc94ab010266776c85b588473260ed048d1e654ff
dir.c: make 'git-status --ignored' work within leading directories

'git-status --ignored path/' doesn't list ignored files and directories
within 'path' if some component of 'path' is classified as untracked.

Disable the DIR_SHOW_OTHER_DIRECTORIES flag while traversing leading
directories. This prevents treat_leading_path() with DIR_SHOW_IGNORED flag
from aborting at the top level untracked directory.

As a side effect, this also eliminates a recursive directory scan per
leading directory level, as treat_directory() can no longer call
read_directory_recursive() when called from treat_leading_path().

Signed-off-by: Karsten Blees <blees@dcon.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
dir.c
t/t7061-wtstatus-ignore.sh