Changeset 12040


Ignore:
Timestamp:
May 13, 2009, 5:58:03 AM (10 years ago)
Author:
gb
Message:

In RECORD-SOURCE-FILE, skip some pathname hacking if we have a SOURCE-NOTE
with a null file-name, as can happen (for instance) when LOADing from
a STRING-INPUT-STREAM.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/lib/source-files.lisp

    r11768 r12040  
    692692    (with-lock-grabbed (*source-files-lock*)
    693693      (let ((file-name (source-note-filename source)))
    694         (unless (equalp file-name (car *last-back-translated-name*))
    695           (setf (car *last-back-translated-name*) file-name)
    696           (setf (cdr *last-back-translated-name*)
    697                 (if (physical-pathname-p file-name)
    698                   (namestring (back-translate-pathname file-name))
    699                   file-name)))
    700         (setq file-name (cdr *last-back-translated-name*))
    701         (if (source-note-p source)
    702           (setf (source-note-filename source) file-name)
    703           (setq source file-name)))
     694        (when file-name
     695          (unless (equalp file-name (car *last-back-translated-name*))
     696            (setf (car *last-back-translated-name*) file-name)
     697            (setf (cdr *last-back-translated-name*)
     698                  (if (physical-pathname-p file-name)
     699                    (namestring (back-translate-pathname file-name))
     700                    file-name)))
     701          (setq file-name (cdr *last-back-translated-name*))
     702          (if (source-note-p source)
     703            (setf (source-note-filename source) file-name)
     704            (setq source file-name))))
    704705      (when (eq def-type 't) (report-bad-arg def-type '(not (eql t))))
    705706      (record-definition-source (definition-type-instance def-type
Note: See TracChangeset for help on using the changeset viewer.