emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r114311: * lisp/url/url-misc.el (url-data): Avoid ma


From: Glenn Morris
Subject: [Emacs-diffs] trunk r114311: * lisp/url/url-misc.el (url-data): Avoid match-data mix-up with base64 case.
Date: Mon, 16 Sep 2013 21:28:17 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 114311
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/15285
committer: Glenn Morris <address@hidden>
branch nick: trunk
timestamp: Mon 2013-09-16 17:28:11 -0400
message:
  * lisp/url/url-misc.el (url-data): Avoid match-data mix-up with base64 case.
  Use Content-Transfer-Encoding rather than Content-Encoding.
modified:
  lisp/url/ChangeLog             changelog-20091113204419-o5vbwnq5f7feedwu-3116
  lisp/url/url-misc.el           urlmisc.el-20091113204419-o5vbwnq5f7feedwu-2996
=== modified file 'lisp/url/ChangeLog'
--- a/lisp/url/ChangeLog        2013-09-13 07:01:55 +0000
+++ b/lisp/url/ChangeLog        2013-09-16 21:28:11 +0000
@@ -1,3 +1,8 @@
+2013-09-16  Glenn Morris  <address@hidden>
+
+       * 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  <address@hidden>
 
        * url-http.el (url-handle-content-transfer-encoding):

=== modified file 'lisp/url/url-misc.el'
--- a/lisp/url/url-misc.el      2013-01-02 16:13:04 +0000
+++ b/lisp/url/url-misc.el      2013-09-16 21:28:11 +0000
@@ -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))))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]