diff options
| author | Glenn Morris | 2007-08-17 07:17:45 +0000 |
|---|---|---|
| committer | Glenn Morris | 2007-08-17 07:17:45 +0000 |
| commit | e68b1841303f1e5e9a14c4443ff39b4db64b54fe (patch) | |
| tree | 48e08798563ce7f7bf2f61d955ea23ac067325fd | |
| parent | c60c6d914e8496e535f9c949438c9ef4b4498d5c (diff) | |
| download | emacs-e68b1841303f1e5e9a14c4443ff39b4db64b54fe.tar.gz emacs-e68b1841303f1e5e9a14c4443ff39b4db64b54fe.zip | |
(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.
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/progmodes/compile.el | 8 |
2 files changed, 13 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index d3bd2089d4c..2f6ee763d1d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2007-08-17 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * progmodes/compile.el (compilation-get-file-structure): Make use | ||
| 4 | of the directory part when checking for an existing entry, to | ||
| 5 | handle files with same basename in different directories. | ||
| 6 | |||
| 1 | 2007-08-17 Jay Belanger <jay.p.belanger@gmail.com> | 7 | 2007-08-17 Jay Belanger <jay.p.belanger@gmail.com> |
| 2 | 8 | ||
| 3 | * calc/calc.el (calc-language-alist): Add texinfo-mode. | 9 | * calc/calc.el (calc-language-alist): Add texinfo-mode. |
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index 805ed3c4040..9b83cfc9f3d 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el | |||
| @@ -1972,7 +1972,13 @@ The file-structure looks like this: | |||
| 1972 | ;; Store it for the possibly unnormalized name | 1972 | ;; Store it for the possibly unnormalized name |
| 1973 | (puthash file | 1973 | (puthash file |
| 1974 | ;; Retrieve or create file-structure for normalized name | 1974 | ;; Retrieve or create file-structure for normalized name |
| 1975 | (or (gethash (list filename) compilation-locs) | 1975 | ;; The gethash used to not use spec-directory, but |
| 1976 | ;; this leads to errors when files in different | ||
| 1977 | ;; directories have the same name: | ||
| 1978 | ;; http://lists.gnu.org/archive/html/emacs-devel/2007-08/msg00463.html | ||
| 1979 | (or (gethash (cons filename spec-directory) compilation-locs) | ||
| 1980 | ;; TODO should this, without spec-directory, be | ||
| 1981 | ;; done at all? | ||
| 1976 | (puthash (list filename) | 1982 | (puthash (list filename) |
| 1977 | (list (list filename spec-directory) fmt) | 1983 | (list (list filename spec-directory) fmt) |
| 1978 | compilation-locs)) | 1984 | compilation-locs)) |