summaryrefslogtreecommitdiff
path: root/lisp/net
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2013-12-03 14:21:13 +0200
committerEli Zaretskii <eliz@gnu.org>2013-12-03 14:21:13 +0200
commitd45c90885962da97a8d72d2ffb8ce38046d8cb58 (patch)
tree6eaf922e1456fc625b681df891a9ce627d3f75f6 /lisp/net
parent051546df1a4e52c44b612853fa14a653bc082860 (diff)
downloademacs-d45c90885962da97a8d72d2ffb8ce38046d8cb58.tar.gz
Fixed drag-n-drop with Unicode file names.
Diffstat (limited to 'lisp/net')
-rw-r--r--lisp/net/browse-url.el9
1 files changed, 6 insertions, 3 deletions
diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el
index ff654f23747..461a0543829 100644
--- a/lisp/net/browse-url.el
+++ b/lisp/net/browse-url.el
@@ -723,9 +723,12 @@ interactively. Turn the filename into a URL with function
(defun browse-url-file-url (file)
"Return the URL corresponding to FILE.
Use variable `browse-url-filename-alist' to map filenames to URLs."
- (let ((coding (and (default-value 'enable-multibyte-characters)
- (or file-name-coding-system
- default-file-name-coding-system))))
+ (let ((coding (if (equal system-type 'windows-nt)
+ ;; W32 pretends that file names are UTF-8 encoded.
+ 'utf-8
+ (and (default-value 'enable-multibyte-characters)
+ (or file-name-coding-system
+ default-file-name-coding-system)))))
(if coding (setq file (encode-coding-string file coding))))
(setq file (browse-url-url-encode-chars file "[*\"()',=;?% ]"))
(dolist (map browse-url-filename-alist)