summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/files.el4
1 files changed, 3 insertions, 1 deletions
diff --git a/lisp/files.el b/lisp/files.el
index 746e24e9747..a01c13465ec 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -2024,7 +2024,9 @@ switches do not contain `d', so that a full listing is expected.
This works by running a directory listing program
whose name is in the variable `insert-directory-program'.
If WILDCARD, it also runs the shell specified by `shell-file-name'."
- (let ((handler (find-file-name-handler file 'insert-directory)))
+ ;; We need the directory in order to find the right handler.
+ (let ((handler (find-file-name-handler (expand-file-name file)
+ 'insert-directory)))
(if handler
(funcall handler 'insert-directory file switches
wildcard full-directory-p)