summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Gutov <dgutov@yandex.ru>2016-06-22 21:10:11 +0300
committerDmitry Gutov <dgutov@yandex.ru>2016-06-22 21:10:11 +0300
commit07a986ea7e0f6310e4452aaaeb8c80a02cc6a82d (patch)
treec9d531d98b9ed8106c67baa15013ba4c731280d6
parenta74683f11603e52350ce49d1d3fe79971357713b (diff)
; Revert "Prohibit multibyte characters in url-http-data"
This reverts commit 2ede29575fa22eb7c265117d7511cff9fe02c606. In favor of a better solution to be pushed to emacs-25.
-rw-r--r--lisp/url/url-http.el8
1 files changed, 6 insertions, 2 deletions
diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el
index 0e6f5d3694..306b36ae95 100644
--- a/lisp/url/url-http.el
+++ b/lisp/url/url-http.el
@@ -310,10 +310,14 @@ The string is based on `url-privacy-level' and `url-user-agent'."
;; We used to concat directly, but if one of the strings happens
;; to being multibyte (even if it only contains pure ASCII) then
;; every string gets converted with `string-MAKE-multibyte' which
- ;; turns the 127-255 codes into things like latin-1 accented chars.
+ ;; turns the 127-255 codes into things like latin-1 accented chars
+ ;; (it would work right if it used `string-TO-multibyte' instead).
;; So to avoid the problem we force every string to be unibyte.
(mapconcat
- 'string-to-unibyte
+ ;; FIXME: Instead of `string-AS-unibyte' we'd want
+ ;; `string-to-unibyte', so as to properly signal an error if one
+ ;; of the strings contains a multibyte char.
+ 'string-as-unibyte
(delq nil
(list
;; The request