]> code.delx.au - gnu-emacs/commitdiff
Prohibit multibyte characters in url-http-data
authorDmitry Gutov <dgutov@yandex.ru>
Sun, 19 Jun 2016 18:06:39 +0000 (21:06 +0300)
committerDmitry Gutov <dgutov@yandex.ru>
Sun, 19 Jun 2016 18:06:39 +0000 (21:06 +0300)
It didn't work anyway, but this makes any such errors more obvious
by catching them earlier.

* lisp/url/url-http.el (url-http-create-request):
Use string-to-unibyte (bug#23750).

lisp/url/url-http.el

index 306b36ae9519b6197751157b830854ab8093bba0..0e6f5d3694bfb721267021071c6d9fcb10a59bdc 100644 (file)
@@ -310,14 +310,10 @@ 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
-          ;; (it would work right if it used `string-TO-multibyte' instead).
+          ;; turns the 127-255 codes into things like latin-1 accented chars.
           ;; So to avoid the problem we force every string to be unibyte.
           (mapconcat
-           ;; 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
+           'string-to-unibyte
            (delq nil
             (list
              ;; The request