From: Miles Bader Date: Fri, 29 Jul 2005 01:44:40 +0000 (+0000) Subject: Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-503 X-Git-Tag: emacs-pretest-22.0.90~7847 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=d44e3b453c528446579182d82284abbfd80f8b7d;p=emacs.git Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-503 Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 98) - Update from CVS 2005-07-28 Katsumi Yamaoka * lisp/gnus/rfc2231.el (rfc2231-parse-string): Take care that not only a segmented parameter but also other parameters might be there. --- diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 992c351ef31..7bc733ad90f 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,8 @@ +2005-07-28 Katsumi Yamaoka + + * rfc2231.el (rfc2231-parse-string): Take care that not only a + segmented parameter but also other parameters might be there. + 2005-07-26 Katsumi Yamaoka * gnus-art.el (gnus-article-next-page-1): Don't scroll if there're diff --git a/lisp/gnus/rfc2231.el b/lisp/gnus/rfc2231.el index 0a6cfdb2af1..4c39ba6c7fd 100644 --- a/lisp/gnus/rfc2231.el +++ b/lisp/gnus/rfc2231.el @@ -1,6 +1,6 @@ ;;; rfc2231.el --- Functions for decoding rfc2231 headers -;; Copyright (C) 1998, 1999, 2000, 2002, 2003, 2004 +;; Copyright (C) 1998, 1999, 2000, 2002, 2003, 2004, 2005 ;; Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen @@ -52,7 +52,7 @@ The list will be on the form (prev-value "") display-name mailbox c display-string parameters attribute value type subtype number encoded - prev-attribute) + prev-attribute prev-encoded) (ietf-drums-init (mail-header-remove-whitespace (mail-header-remove-comments string))) (let ((table (copy-syntax-table ietf-drums-syntax-table))) @@ -106,9 +106,14 @@ The list will be on the form ;; See if we have any previous continuations. (when (and prev-attribute (not (eq prev-attribute attribute))) - (push (cons prev-attribute prev-value) parameters) + (push (cons prev-attribute + (if prev-encoded + (rfc2231-decode-encoded-string prev-value) + prev-value)) + parameters) (setq prev-attribute nil - prev-value "")) + prev-value "" + prev-encoded nil)) (unless (eq c ?=) (error "Invalid header: %s" string)) (forward-char 1) @@ -127,7 +132,8 @@ The list will be on the form (error "Invalid header: %s" string))) (if number (setq prev-attribute attribute - prev-value (concat prev-value value)) + prev-value (concat prev-value value) + prev-encoded encoded) (push (cons attribute (if encoded (rfc2231-decode-encoded-string value) @@ -137,7 +143,7 @@ The list will be on the form ;; Take care of any final continuations. (when prev-attribute (push (cons prev-attribute - (if encoded + (if prev-encoded (rfc2231-decode-encoded-string prev-value) prev-value)) parameters))