exclude: fix a bug in prefix compare optimization
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>
Mon, 15 Oct 2012 06:24:36 +0000 (13:24 +0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 15 Oct 2012 21:57:16 +0000 (14:57 -0700)
commita3ea4d7199870595eb3a264c4b41e725b4417bc2
tree1bc77270441107a427f64b43040da7fc5d426ef1
parent593cb8802eb43b17e6344790278cea7e6ec68b43
exclude: fix a bug in prefix compare optimization

When "namelen" becomes zero at this stage, we have matched the fixed
part, but whether it actually matches the pattern still depends on the
pattern in "exclude". As demonstrated in t3001, path "three/a.3"
exists and it matches the "three/a.3" part in pattern "three/a.3[abc]",
but that does not mean a true match.

Don't be too optimistic and let fnmatch() do the job.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
dir.c
t/t3001-ls-files-others-exclude.sh