Changeset 13718


Ignore:
Timestamp:
01/04/12 21:51:15 (12 years ago)
Author:
Mark Evenson
Message:

backport r13704: Fix problems loading ABCL-CONTRIB.

Location:
branches/1.0.x/abcl
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/1.0.x/abcl/src/org/armedbear/lisp/Pathname.java

    r13681 r13718  
    21702170            Cons jars = (Cons) pathname.device;
    21712171            LispObject o = jars.car();
    2172             if (o instanceof Pathname && ! (((Pathname)o).isURL())) {
     2172            if (o instanceof Pathname
     2173                && !(((Pathname)o).isURL())
     2174                // XXX Silently fail to call truename() if the default
     2175                // pathname defaults exist within a jar, as that will
     2176                // (probably) not succeed.  The better solution would
     2177                // probably be to parametize the value of
     2178                // *DEFAULT-PATHNAME-DEFAULTS* on invocations of
     2179                // truename().
     2180                && !coerceToPathname(Symbol.DEFAULT_PATHNAME_DEFAULTS.symbolValue()).isJar())
     2181                {
    21732182                LispObject truename = Pathname.truename((Pathname)o, errorIfDoesNotExist);
    2174                 if (truename != null
     2183                if (truename != null && truename != NIL
    21752184                    && truename instanceof Pathname) {
    21762185                    Pathname truePathname = (Pathname)truename;
  • branches/1.0.x/abcl/src/org/armedbear/lisp/asdf.lisp

    r13717 r13718  
    16541654                   (*default-pathname-defaults*
    16551655                    (pathname-directory-pathname pathname)))
    1656                ;;; XXX Kludge for ABCL ticket #181
    1657                #+abcl
    1658                (when (ext:pathname-jar-p pathname)
    1659                  (setf *default-pathname-defaults*
    1660                        (make-pathname :device nil :defaults *default-pathname-defaults*)))
    16611656               (asdf-message (compatfmt "~&~@<; ~@;Loading system definition from ~A into ~A~@:>~%")
    16621657                             pathname package)
  • branches/1.0.x/abcl/test/lisp/abcl/jar-pathname.lisp

    r13457 r13718  
    482482  #p"/foo/d/e/f.lisp")
    483483
    484      
    485 
    486        
    487 
    488  
     484;;; ticket #181
     485;;; TODO Make reasons for failure more clear
     486(deftest jar-pathname.truename.1
     487    (let* ((abcl
     488            (slot-value (asdf:find-system 'abcl) 'asdf::absolute-pathname))
     489           (jar-entry
     490            (pathname (format nil "jar:file:~A/dist/abcl-contrib.jar!/jss/jss.asd" (namestring abcl))))
     491           (jar-entry-dir
     492            (make-pathname :defaults jar-entry :name nil :type nil))
     493           (defaults
     494            *default-pathname-defaults*))
     495      (let ((*default-pathname-defaults* jar-entry-dir))
     496        (not (probe-file (merge-pathnames jar-entry)))))
     497  nil)
Note: See TracChangeset for help on using the changeset viewer.