Changeset 10871


Ignore:
Timestamp:
Sep 25, 2008, 10:00:31 AM (11 years ago)
Author:
gb
Message:

When hashing physical pathnames, ignore the version slot (if EQUAL
doesn't compare versions, two EQUAL pathnames whose versions differ
should hash to the same value.)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/level-0/l0-hash.lisp

    r10867 r10871  
    17431743    (typecase expr
    17441744      ((or string bit-vector number character)  (+ key (%%equalhash expr)))
    1745       ((or pathname logical-pathname)
     1745      (logical-pathname
    17461746       (dotimes (i (uvsize expr) key)
    17471747         (declare (fixnum i))
    17481748         (setq key (+ key (sxhash-aux (%svref expr i) (1- counter) key)))))
     1749      (pathname
     1750       ;; Don't consider %PHYSICAL-PATHNAME-VERSION to be significant
     1751       (dotimes (i (uvsize expr) key)
     1752         (declare (fixnum i))
     1753         (unless (= i %physical-pathname-version)
     1754           (setq key (+ key (sxhash-aux (%svref expr i) (1- counter) key))))))
    17491755      (symbol (+ key (%%equalhash (symbol-name expr))))
    17501756      (cons (sxhash-aux
Note: See TracChangeset for help on using the changeset viewer.