# HG changeset patch # User Richard M. Stallman # Date 1129915150 0 # Node ID dc2f1300400be0fdfa1f9a299f574d6f4e6b7aab # Parent 236b02d0dac9af7b2707e485b8e85edf737c8f0b (file-loadhist-lookup): Call locate-library instead of find-library-name. Don't try converting abs file names to library names, since load-history no longer has library names in it. (file-dependents, file-provides, file-requires): Doc fixes. diff -r 236b02d0dac9 -r dc2f1300400b lisp/loadhist.el --- a/lisp/loadhist.el Fri Oct 21 16:54:13 2005 +0000 +++ b/lisp/loadhist.el Fri Oct 21 17:19:10 2005 +0000 @@ -53,24 +53,23 @@ (car (feature-symbols feature)))) (defun file-loadhist-lookup (file) - "Return the `load-history' element for FILE." + "Return the `load-history' element for FILE. +FILE can be a file name, or a library name. +A library name is equivalent to the file name that `load-library' would load." ;; First look for FILE as given. (let ((symbols (assoc file load-history))) ;; Try converting a library name to an absolute file name. (and (null symbols) - (let ((absname (find-library-name file))) - (if (not (equal absname file)) - (setq symbols (cdr (assoc absname load-history)))))) - ;; Try converting an absolute file name to a library name. - (and (null symbols) (string-match "[.]el\\'" file) - (let ((libname (file-name-nondirectory file))) - (string-match "[.]el\\'" libname) - (setq libname (substring libname 0 (match-beginning 0))) - (setq symbols (cdr (assoc libname load-history))))) + (let ((absname + (locate-file file load-path load-suffixes))) + (and absname (not (equal absname file)) + (setq symbols (cdr (assoc absname load-history)))))) symbols)) (defun file-provides (file) - "Return the list of features provided by FILE." + "Return the list of features provided by FILE as it was loaded. +FILE can be a file name, or a library name. +A library name is equivalent to the file name that `load-library' would load." (let ((symbols (file-loadhist-lookup file)) provides) (mapc (lambda (x) @@ -80,7 +79,9 @@ provides)) (defun file-requires (file) - "Return the list of features required by FILE." + "Return the list of features required by FILE as it was loaded. +FILE can be a file name, or a library name. +A library name is equivalent to the file name that `load-library' would load." (let ((symbols (file-loadhist-lookup file)) requires) (mapc (lambda (x) @@ -98,7 +99,9 @@ (defun file-dependents (file) "Return the list of loaded libraries that depend on FILE. -This can include FILE itself." +This can include FILE itself. +FILE can be a file name, or a library name. +A library name is equivalent to the file name that `load-library' would load." (let ((provides (file-provides file)) (dependents nil)) (dolist (x load-history dependents)