summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/files.el14
1 files changed, 9 insertions, 5 deletions
diff --git a/lisp/files.el b/lisp/files.el
index f12606ece7c..0968d0fef48 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -2985,14 +2985,16 @@ If WILDCARD, it also runs the shell specified by `shell-file-name'."
(substring pattern (match-beginning 0)))
beg (1+ (match-end 0))))
(call-process shell-file-name nil t nil
- "-c" (concat "\\" ;; Disregard shell aliases!
+ "-c" (concat "\\" ;; Disregard shell aliases!
insert-directory-program
" -d "
(if (stringp switches)
switches
(mapconcat 'identity switches " "))
" -- "
- pattern)))
+ (encode-coding-string
+ pattern
+ file-name-coding-system t))))
;; SunOS 4.1.3, SVr4 and others need the "." to list the
;; directory if FILE is a symbolic link.
(apply 'call-process
@@ -3013,9 +3015,11 @@ If WILDCARD, it also runs the shell specified by `shell-file-name'."
;; Avoid lossage if FILE starts with `-'.
'("--")
(list
- (if full-directory-p
- (concat (file-name-as-directory file) ".")
- file)))))))
+ (encode-coding-string
+ (if full-directory-p
+ (concat (file-name-as-directory file) ".")
+ file)
+ file-name-coding-system t)))))))
;; We get here if ls failed.
;; Access the file to get a suitable error.
(access-file file "Reading directory"))))))