(compilation-get-file-structure): Make use of the directory part when

checking for an existing entry, to handle files with same basename in
different directories.
This commit is contained in:
Glenn Morris 2007-08-17 07:17:45 +00:00
parent c60c6d914e
commit e68b184130
2 changed files with 13 additions and 1 deletions

View file

@ -1,3 +1,9 @@
2007-08-17 Glenn Morris <rgm@gnu.org>
* progmodes/compile.el (compilation-get-file-structure): Make use
of the directory part when checking for an existing entry, to
handle files with same basename in different directories.
2007-08-17 Jay Belanger <jay.p.belanger@gmail.com>
* calc/calc.el (calc-language-alist): Add texinfo-mode.

View file

@ -1972,7 +1972,13 @@ The file-structure looks like this:
;; Store it for the possibly unnormalized name
(puthash file
;; Retrieve or create file-structure for normalized name
(or (gethash (list filename) compilation-locs)
;; The gethash used to not use spec-directory, but
;; this leads to errors when files in different
;; directories have the same name:
;; http://lists.gnu.org/archive/html/emacs-devel/2007-08/msg00463.html
(or (gethash (cons filename spec-directory) compilation-locs)
;; TODO should this, without spec-directory, be
;; done at all?
(puthash (list filename)
(list (list filename spec-directory) fmt)
compilation-locs))