Changeset 15442


Ignore:
Timestamp:
10/29/20 16:54:36 (2 years ago)
Author:
Mark Evenson
Message:

MERGE-PATHNAMES downcasts to URLPathname result when appropiate

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/Pathname.java

    r15435 r15442  
    17281728      }
    17291729
    1730       // Merge the directory of a relative JAR-PATHNAME with the
    1731       // default directory. 
    1732       // if (pathname.isJar()) {
    1733       //   Pathname root = ((JarPathname)result).getRootJar();
    1734        
    1735 
    1736       //   LispObject jar = jars.car;
    1737       //   if (jar instanceof Pathname) {
    1738       //     Pathname defaults = Pathname.create(d);
    1739       //     if (defaults.isJar()) {
    1740       //       defaults.setDevice(NIL);
    1741       //     }
    1742       //     Pathname o = mergePathnames((Pathname)jar, defaults);
    1743       //     if (o.getDirectory() instanceof Cons
    1744       //         && ((Cons)o.getDirectory()).length() == 1) { // i.e. (:ABSOLUTE) or (:RELATIVE)
    1745       //       o.setDirectory(NIL);
    1746       //     }
    1747       //     ((Cons)result.device).car = o;
    1748       //   }
    1749       //   result.setDirectory(p.getDirectory());
    1750       // } else {
    1751       //   result.setDirectory(mergeDirectories(p.getDirectory(), d.getDirectory()));
    1752       // }
    1753 
    17541730      if (pathname.isJar()) {
    17551731        result.setDirectory(p.getDirectory());
     
    18221798        }
    18231799      }
     1800      // Downcast to URLPathname if resolving a URLPathname
     1801      if (result instanceof Pathname
     1802          && URLPathname.hasExplicitFile(result)) {
     1803        URLPathname downcastResult = new URLPathname();
     1804        downcastResult.copyFrom(result);
     1805        result = downcastResult;
     1806      }
     1807         
    18241808      return result;
    18251809    }
Note: See TracChangeset for help on using the changeset viewer.