I was trying to replicate this bug, and I find now that loading the clim listener crashes when it's unable to find a compiled version of "/home/rpg/lisp/mcclim/Apps/Listener/icons/CVS".
As far as I can tell, this is because the REMOVE-IF #'directoryp in PRECACHE-ICONS is not working for me.
Here's the unpleasant behavior that's responsible for the bug:
[1] CLIM-LISTENER(9): (setf pn *) #p"/home/rpg/lisp/mcclim/Apps/Listener/icons/CVS" [1] CLIM-LISTENER(10): (directoryp pn) NIL [1] CLIM-LISTENER(11): (pathname-name pn) "CVS"
The relevant code snippet:
; There has to be a better way.. (defun directoryp (pathname) "Returns pathname when supplied with a directory, otherwise nil" (if (or (pathname-name pathname) (pathname-type pathname)) nil pathname))
Reasonable-patch-p?
(defun directoryp (pathname) "Returns pathname when supplied with a directory, otherwise nil" #+allegro (excl:file-directory-p pathname) #-allegro (if (or (pathname-name pathname) (pathname-type pathname)) nil pathname))
Cheers, r