[mcclim-devel] Problem with PRECACHE-ICONS in CLIM-LISTENER on Allegro 6.2 left-clicking field in ACCEPTING-VALUES dialog

rpgoldman at real-time.com rpgoldman at real-time.com
Thu Jan 27 17:58:47 UTC 2005


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



More information about the mcclim-devel mailing list