[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
emacs-29 4a8ff671b0 4/4: Don’t assume make-directory handler returns ni
From: |
Paul Eggert |
Subject: |
emacs-29 4a8ff671b0 4/4: Don’t assume make-directory handler returns nil |
Date: |
Sat, 17 Dec 2022 17:24:26 -0500 (EST) |
branch: emacs-29
commit 4a8ff671b0e93e96f7fca4204cdbc83f99a3387c
Author: Paul Eggert <eggert@cs.ucla.edu>
Commit: Paul Eggert <eggert@cs.ucla.edu>
Don’t assume make-directory handler returns nil
* lisp/files.el (make-directory): Ignore what the make-directory
handler returns, as its return value was not documented in Emacs 28.
---
lisp/files.el | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/lisp/files.el b/lisp/files.el
index 3cf7833ae0..cc7d7e2af9 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -6224,7 +6224,12 @@ Signal an error if unsuccessful."
;; make sure we find its make-directory handler.
(setq dir (expand-file-name dir))
(let ((mkdir (if-let ((handler (find-file-name-handler dir 'make-directory)))
- #'(lambda (dir) (funcall handler 'make-directory dir))
+ #'(lambda (dir)
+ ;; Use 'ignore' since the handler might be designed for
+ ;; Emacs 28-, so it might return an (undocumented)
+ ;; non-nil value, whereas the Emacs 29+ convention is
+ ;; to return nil here.
+ (ignore (funcall handler 'make-directory dir)))
#'make-directory-internal)))
(if (not parents)
(funcall mkdir dir)