summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/gnus/ChangeLog5
-rw-r--r--lisp/gnus/qp.el8
2 files changed, 11 insertions, 2 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 37d89ba8ca..fe025210c2 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,8 @@
+2012-09-06 Kenichi Handa <handa@gnu.org>
+
+ * qp.el (quoted-printable-decode-region): Fix previous change; handle
+ lowercase a..f.
+
2012-09-03 Lars Ingebrigtsen <larsi@gnus.org>
* dgnushack.el: XEmacs 21.5 compilation fix.
diff --git a/lisp/gnus/qp.el b/lisp/gnus/qp.el
index 87252684a4..bfa1fe0a6d 100644
--- a/lisp/gnus/qp.el
+++ b/lisp/gnus/qp.el
@@ -55,8 +55,12 @@ them into characters should be done separately."
;; recognize them as the corresponding uppercase letters.''
(let ((case-fold-search t)
(decode-hex #'(lambda (n1 n2)
- (+ (* (if (<= n1 ?9) (- n1 ?0) (+ (- n1 ?A) 10)) 16)
- (if (<= n2 ?9) (- n2 ?0) (+ (- n2 ?A) 10))))))
+ (+ (* (if (<= n1 ?9) (- n1 ?0)
+ (if (<= n1 ?F) (+ (- n1 ?A) 10)
+ (+ (- n1 ?a) 10))) 16)
+ (if (<= n2 ?9) (- n2 ?0)
+ (if (<= n2 ?F) (+ (- n2 ?A) 10)
+ (+ (- n2 ?a) 10)))))))
(narrow-to-region from to)
;; Do this in case we're called from Gnus, say, in a buffer
;; which already contains non-ASCII characters which would