]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/files.el (require-with-check): Improve error messages.
authorPip Cet <pipcet@protonmail.com>
Thu, 15 Aug 2024 16:28:07 +0000 (16:28 +0000)
committerEshel Yaron <me@eshelyaron.com>
Tue, 20 Aug 2024 14:08:12 +0000 (16:08 +0200)
(cherry picked from commit 45a78ec6c57ab7d88846a143f81087d5575d0422)

lisp/files.el

index 113da6b6be317a6dce5a9dd87acb1bbad8e47132..aa58a40253ef64876aede28a9f447fd080092563 100644 (file)
@@ -1286,9 +1286,17 @@ NOERROR is equal to `reload'), or otherwise emit a warning."
         (cond
          ((assoc fn load-history) nil)  ;We loaded the right file.
          ((eq noerror 'reload) (load fn nil 'nomessage))
-         (t (funcall (if noerror #'warn #'error)
-                     "Feature `%S' is now provided by a different file %s"
-                     feature fn)))))
+         ((and fn (memq feature features))
+          (funcall (if noerror #'warn #'error)
+                   "Feature `%S' is now provided by a different file %s"
+                   feature fn))
+         (fn
+          (funcall (if noerror #'warn #'error)
+                   "Could not load file %s" fn))
+         (t
+          (funcall (if noerror #'warn #'error)
+                   "Could not locate file %s in load path"
+                   (or filename (symbol-name feature)))))))
     res))
 
 (defun file-remote-p (file &optional identification connected)