diff options
author | Dmitry Gutov <dgutov@yandex.ru> | 2016-08-11 21:06:49 +0300 |
---|---|---|
committer | Dmitry Gutov <dgutov@yandex.ru> | 2016-08-11 21:06:49 +0300 |
commit | 75f1882479cc62f8795bb652a0853a3f395420a2 (patch) | |
tree | 8d17f455be4a66937b74aed90ca5d62daf11cd23 | |
parent | d2db5dd8358f132252c8d11d40b1457615c43a57 (diff) |
Convert the remaining strings to unibyte before concatenating
* lisp/url/url-http.el (url-http--encode-string): New function.
(url-http-create-request): Use it to convert ASCII to unibyte.
(Bug#24117)
-rw-r--r-- | lisp/url/url-http.el | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el index 7156e6fa4e..860e652936 100644 --- a/lisp/url/url-http.el +++ b/lisp/url/url-http.el @@ -235,7 +235,7 @@ request.") 'url-http-proxy-basic-auth-storage)) (url-get-authentication url-http-proxy nil 'any nil)))) (real-fname (url-filename url-http-target-url)) - (host (url-host url-http-target-url)) + (host (url-http--encode-string (url-host url-http-target-url))) (auth (if (cdr-safe (assoc "Authorization" url-http-extra-headers)) nil (url-get-authentication (or @@ -278,7 +278,8 @@ request.") (concat ;; The request (or url-http-method "GET") " " - (if using-proxy (url-recreate-url url-http-target-url) real-fname) + (url-http--encode-string + (if using-proxy (url-recreate-url url-http-target-url) real-fname)) " HTTP/" url-http-version "\r\n" ;; Version of MIME we speak "MIME-Version: 1.0\r\n" @@ -360,6 +361,11 @@ request.") (url-http-debug "Request is: \n%s" request) request)) +(defun url-http--encode-string (s) + (if (multibyte-string-p s) + (encode-coding-string s 'us-ascii) + s)) + ;; Parsing routines (defun url-http-clean-headers () "Remove trailing \r from header lines. |