Ignore:
Timestamp:
Sep 25, 2008, 9:58:40 AM (11 years ago)
Author:
gb
Message:

When comparing (physical) pathames with EQUAL, ignore the version slot.
(Code was trying to do this, but after the addition of the device slot,
the version is no longer the last slot.)

File:
1 edited

Legend:

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

    r10458 r10870  
    377377                       (locally
    378378                           (declare (optimize (speed 3) (safety 0)))
    379                          (let* ((x-size (uvsize x)))
    380                            (declare (fixnum x-size))
     379                         (let* ((x-size (uvsize x))
     380                                (skip (if (eq structname 'pathname)
     381                                        %physical-pathname-version
     382                                        -1)))
     383                           (declare (fixnum x-size skip))
    381384                           (when (= x-size (the fixnum (uvsize y)))
    382                              ;; Ignore last (version) slot in physical pathnames.
    383                              (when (eq structname 'pathname)
    384                                (decf x-size))
    385385                             (do* ((i 1 (1+ i)))
    386386                                  ((= i x-size) t)
    387387                               (declare (fixnum i))
    388                                (unless (equal (%svref x i) (%svref y i))
     388                               (unless (or (= i skip)
     389                                           (equal (%svref x i) (%svref y i)))
    389390                                 (return)))))))))))))
    390391
Note: See TracChangeset for help on using the changeset viewer.