etags.el fix for compressed files

* lisp/progmodes/etags.el (tags-compression-info-list): Doc fix.
(tag-find-file-of-tag-noselect):
Check auto-compression-mode rather than 'jka-compr being loaded.

Fixes: debbugs:13338
This commit is contained in:
Glenn Morris 2013-01-02 18:54:10 -08:00
parent 75e78d1e90
commit 220740a35b
2 changed files with 8 additions and 7 deletions

View file

@ -1,5 +1,9 @@
2013-01-03 Glenn Morris <rgm@gnu.org>
* progmodes/etags.el (tags-compression-info-list): Doc fix.
(tag-find-file-of-tag-noselect): Check auto-compression-mode
rather than 'jka-compr being loaded. (Bug#13338)
* subr.el (eval-after-load): Don't purecopy the form, so that it
can be nconc'd later on; reverts 2009-11-11 change. (Bug#13331)

View file

@ -67,11 +67,8 @@ Use the `etags' program to make a tags table file."
;;;###autoload
(defcustom tags-compression-info-list
(purecopy '("" ".Z" ".bz2" ".gz" ".xz" ".tgz"))
"List of extensions tried by etags when jka-compr is used.
An empty string means search the non-compressed file.
These extensions will be tried only if jka-compr was activated
\(i.e. via customize of `auto-compression-mode' or by calling the function
`auto-compression-mode')."
"List of extensions tried by etags when `auto-compression-mode' is on.
An empty string means search the non-compressed file."
:version "24.1" ; added xz
:type '(repeat string)
:group 'etags)
@ -1180,7 +1177,7 @@ error message."
"Find the right line in the specified FILE."
;; If interested in compressed-files, search files with extensions.
;; Otherwise, search only the real file.
(let* ((buffer-search-extensions (if (featurep 'jka-compr)
(let* ((buffer-search-extensions (if auto-compression-mode
tags-compression-info-list
'("")))
the-buffer
@ -1204,7 +1201,7 @@ error message."
(setq file-search-extensions (cdr file-search-extensions))
(setq the-buffer (find-file-noselect (concat file (car file-search-extensions))))))
(if (not the-buffer)
(if (featurep 'jka-compr)
(if auto-compression-mode
(error "File %s (with or without extensions %s) not found" file tags-compression-info-list)
(error "File %s not found" file))
(set-buffer the-buffer))))