1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-15 10:30:25 -08:00

* lisp/url/url-misc.el (url-data): Avoid match-data mix-up with base64 case.

Use Content-Transfer-Encoding rather than Content-Encoding.

Fixes: debbugs:15285
This commit is contained in:
Glenn Morris 2013-09-16 17:28:11 -04:00
parent 0c2a2b57fe
commit a19f6c6396
2 changed files with 10 additions and 6 deletions

View file

@ -1,3 +1,8 @@
2013-09-16 Glenn Morris <rgm@gnu.org>
* url-misc.el (url-data): Avoid match-data mix-up with base64 case.
Use Content-Transfer-Encoding rather than Content-Encoding. (Bug#15285)
2013-09-13 Glenn Morris <rgm@gnu.org>
* url-http.el (url-handle-content-transfer-encoding):

View file

@ -1,7 +1,6 @@
;;; url-misc.el --- Misc Uniform Resource Locator retrieval code
;; Copyright (C) 1996-1999, 2002, 2004-2013 Free Software Foundation,
;; Inc.
;; Copyright (C) 1996-1999, 2002, 2004-2013 Free Software Foundation, Inc.
;; Keywords: comm, data, processes
@ -89,19 +88,19 @@
(save-excursion
(if (not (string-match "\\([^,]*\\)?," desc))
(error "Malformed data URL: %s" desc)
(setq mediatype (match-string 1 desc))
(setq mediatype (match-string 1 desc)
data (url-unhex-string (substring desc (match-end 0))))
(if (and mediatype (string-match ";base64\\'" mediatype))
(setq mediatype (substring mediatype 0 (match-beginning 0))
encoding "base64"))
(if (or (null mediatype)
(eq ?\; (aref mediatype 0)))
(setq mediatype (concat "text/plain" mediatype)))
(setq data (url-unhex-string (substring desc (match-end 0)))))
(setq mediatype (concat "text/plain" mediatype))))
(set-buffer (generate-new-buffer " *url-data*"))
(mm-disable-multibyte)
(insert (format "Content-Length: %d\n" (length data))
"Content-Type: " mediatype "\n"
"Content-Encoding: " encoding "\n"
"Content-Transfer-Encoding: " encoding "\n"
"\n")
(if data (insert data))
(current-buffer))))