mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-04 11:40:22 +00:00
(find-function-search-for-symbol):
Remove unnecessary test on `library' for explicit file name. Widen scope of save-match-data.
This commit is contained in:
parent
645ff508dd
commit
78b6524e5c
@ -108,29 +108,27 @@ If VARIABLE-P is nil, `find-function-regexp' is used, otherwise
|
||||
`find-variable-regexp' is used."
|
||||
(if (null library)
|
||||
(error "Don't know where `%s' is defined" symbol))
|
||||
(if (string-match "\\.el\\(c\\)\\'" library)
|
||||
(setq library (substring library 0 (match-beginning 1))))
|
||||
(let* ((path find-function-source-path)
|
||||
(compression (or (rassq 'jka-compr-handler file-name-handler-alist)
|
||||
(member 'crypt-find-file-hook find-file-hooks)))
|
||||
(filename (if (and (file-exists-p library)
|
||||
(not (file-directory-p library)))
|
||||
library
|
||||
;; use `file-name-sans-extension' here? (if it gets fixed)
|
||||
(if (string-match "\\(\\.el\\)\\'" library)
|
||||
(setq library (substring library 0
|
||||
(match-beginning 1))))
|
||||
(or (locate-library (concat library ".el") t path)
|
||||
(locate-library library t path)
|
||||
(if compression
|
||||
(or (locate-library (concat library ".el.gz")
|
||||
t path)
|
||||
(locate-library (concat library ".gz")
|
||||
t path)))))))
|
||||
(if (not filename)
|
||||
(error "The library `%s' is not in the path" library))
|
||||
(with-current-buffer (find-file-noselect filename)
|
||||
(save-match-data
|
||||
(save-match-data
|
||||
(if (string-match "\\.el\\(c\\)\\'" library)
|
||||
(setq library (substring library 0 (match-beginning 1))))
|
||||
(let* ((path find-function-source-path)
|
||||
(compression (or (rassq 'jka-compr-handler file-name-handler-alist)
|
||||
(member 'crypt-find-file-hook find-file-hooks)))
|
||||
(filename (progn
|
||||
;; use `file-name-sans-extension' here? (if it gets fixed)
|
||||
(if (string-match "\\(\\.el\\)\\'" library)
|
||||
(setq library (substring library 0
|
||||
(match-beginning 1))))
|
||||
(or (locate-library (concat library ".el") t path)
|
||||
(locate-library library t path)
|
||||
(if compression
|
||||
(or (locate-library (concat library ".el.gz")
|
||||
t path)
|
||||
(locate-library (concat library ".gz")
|
||||
t path)))))))
|
||||
(if (not filename)
|
||||
(error "The library `%s' is not in the path" library))
|
||||
(with-current-buffer (find-file-noselect filename)
|
||||
(let ((regexp (format (if variable-p
|
||||
find-variable-regexp
|
||||
find-function-regexp)
|
||||
|
Loading…
Reference in New Issue
Block a user