Encoding fix for browse-url-encode-url.
authorChong Yidong <cyd@gnu.org>
Wed, 9 May 2012 12:39:40 +0000 (20:39 +0800)
committerChong Yidong <cyd@gnu.org>
Wed, 9 May 2012 12:39:40 +0000 (20:39 +0800)
* lisp/net/browse-url.el (browse-url-url-encode-chars): Use upper-case.
(browse-url-encode-url): Encode spaces and quotes.

Fixes: debbugs:6300

lisp/ChangeLog
lisp/net/browse-url.el

index 635a24d..bf15cd2 100644 (file)
@@ -1,3 +1,8 @@
+2012-05-09  Chong Yidong  <cyd@gnu.org>
+
+       * net/browse-url.el (browse-url-url-encode-chars): Use upper-case.
+       (browse-url-encode-url): Encode spaces and quotes (Bug#6300).
+
 2012-05-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * shell.el (shell-completion-vars): Fix last change (bug#11348).
index 62c0e31..f4e7e94 100644 (file)
@@ -642,7 +642,7 @@ CHARS is a regexp-like character alternative (e.g., \"[)$]\")."
        (s 0))
     (while (setq s (string-match chars encoded-text s))
       (setq encoded-text
-           (replace-match (format "%%%x"
+           (replace-match (format "%%%X"
                                   (string-to-char (match-string 0 encoded-text)))
                           t t encoded-text)
            s (1+ s)))
@@ -655,7 +655,7 @@ regarding its parameter treatment."
   ;; FIXME: Is there an actual example of a web browser getting
   ;; confused?  (This used to encode commas, but at least Firefox
   ;; handles commas correctly and doesn't accept encoded commas.)
-  (browse-url-url-encode-chars url "[)$]"))
+  (browse-url-url-encode-chars url "[\")$] "))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; URL input