On May 11, 2010, at 4:37 AM, Alan Ruttenberg wrote:
CL-USER> (DIRECTORY "jar:file:/Users/alanr/Desktop/jar2go.jar!/abcl-module-*.lisp") Calling (DIRECTORY "jar:file:/Users/alanr/Desktop/jar2go.jar!/abcl-module-*.lisp") DIRECTORY returned #<FILE-ERROR {E2C42F}>
This turned out to be a problem with WILD-PATHNAME-P not detecting wildcards in components which were string (i.e. (WILD-PATHNAME-P "foo*bar") was returning nil), which I have fixed in [r12667][1] for "*" occuring in DIRECTORY, NAME, and TYPE string components. The rules for HOST and DEVICE would be a little more complicated, which I don't have time at the moment.
[1]: http://trac.common-lisp.net/armedbear/changeset/12667
Below is the function I use for directory in jars. Please consider including it until there is a correct implementation in java.
[…]
This is identical to the algorithm implemented in Pathname.java:match-wild-jar-pathname (I think I aped your implementation into Java). I had coded a further check that the argument was indeed a wild pathname, which was failing due to a faulty WILD-PATHNAME-P implementation.
-- "A screaming comes across the sky. It has happened before, but there is nothing to compare to it now."