On 16 March 2011 19:37, Ville Voutilainen ville.voutilainen@gmail.com wrote:
patches that break things remain long on trunk. Among other things, this prevents the ANSI compiled tests from being run.
Damn. I'll take a look. The filtering breakage was supposed to be contained to wild-inferiors cases, where recursing was broken. I fixed the recursion, but we don't match wild-inferiors right with pathname-match-p and in directory, so the plan was to fix the recursion first and matching later, while keeping the non-wild-inferiors cases working. Apparently that didn't work out.
Ok, the attempt to protect against File::Foo::Bar breaks things. We need to be able to figure out how to build a pathname with a name component only, the previous attempt resulted in nil components which break matching there. Reverted to a more conservative approach with r13252.
I'll be traveling soon, so work on this can on my part continue after next week. Currently we still don't match wild-inferiors correctly (pathname-match-p is over-eager to begin with, it always matches T if a directory component has a wild-inferior, which doesn't work right for paths like "foo/**/bar/baz" vs. "/foo/notbar/baz"). We also need to do the actual entry result matching in directory so that it matches such wild-inferiors properly, and we don't currently handle File::Bar::Baz right.
We shouldn't have regressions to the previous functionality now, please shout if any arise.