emacs-devel
[Top][All Lists]
Advanced

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

address@hidden: webjump-url-encode and non-ascii characters]


From: Richard Stallman
Subject: address@hidden: webjump-url-encode and non-ascii characters]
Date: Sun, 08 Jul 2007 18:23:53 -0400

Would someone please DTRT then ack?

------- Start of forwarded message -------
X-Spam-Status: No, score=1.3 required=5.0 tests=RCVD_NUMERIC_HELO,
        SPF_HELO_PASS,SPF_PASS,UNPARSEABLE_RELAY autolearn=no version=3.1.0
To: address@hidden
From: William Xu <address@hidden>
Date: Wed, 04 Jul 2007 18:34:51 +0800
Organization: the Church of Emacs
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Subject: webjump-url-encode and non-ascii characters

webjump-url-encode fails to encode non-ascii characters correctly.

Here's a patch: 

- --- webjump.el        2007-06-03 14:54:53.000000000 +0800
+++ webjump.el.new      2007-07-04 18:29:41.000000000 +0800
@@ -451,14 +451,13 @@
 
 (defun webjump-url-encode (str)
   (mapconcat '(lambda (c)
- -             (cond ((= c 32) "+")
- -                   ((or (and (>= c ?a) (<= c ?z))
- -                        (and (>= c ?A) (<= c ?Z))
- -                        (and (>= c ?0) (<= c ?9)))
- -                    (char-to-string c))
- -                   (t (upcase (format "%%%02x" c)))))
- -          str
- -          ""))
+               (let ((s (char-to-string c)))
+                 (cond ((string= s " ") "+")
+                       ((string-match "[a-zA-Z_.-/]" s) s)
+                       (t (upcase (format "%%%02x" c))))))
+             (string-to-list
+              (encode-coding-string str buffer-file-coding-system))
+             ""))
 
 (defun webjump-url-fix (url)
   (if (webjump-null-or-blank-string-p url)

- -- 
William

????????
????????????
????????????????????????????????
????????????????????????????????



_______________________________________________
Emacs-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-devel
------- End of forwarded message -------




reply via email to

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