]> git.eshelyaron.com Git - emacs.git/commitdiff
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-503
authorMiles Bader <miles@gnu.org>
Fri, 29 Jul 2005 01:44:40 +0000 (01:44 +0000)
committerMiles Bader <miles@gnu.org>
Fri, 29 Jul 2005 01:44:40 +0000 (01:44 +0000)
Merge from gnus--rel--5.10

Patches applied:

 * gnus--rel--5.10  (patch 98)

   - Update from CVS

2005-07-28  Katsumi Yamaoka  <yamaoka@jpl.org>

   * lisp/gnus/rfc2231.el (rfc2231-parse-string): Take care that not only a
   segmented parameter but also other parameters might be there.

lisp/gnus/ChangeLog
lisp/gnus/rfc2231.el

index 992c351ef31b686172d270ad196d4928acafb682..7bc733ad90f2a548fb2bc3a6de03006d05dcd599 100644 (file)
@@ -1,3 +1,8 @@
+2005-07-28  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * 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  <yamaoka@jpl.org>
 
        * gnus-art.el (gnus-article-next-page-1): Don't scroll if there're
index 0a6cfdb2af1679ae4d1ffea023844c805783c6e7..4c39ba6c7fd240020704ee4b1fbbc5b2cf2dffa6 100644 (file)
@@ -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 <larsi@gnus.org>
@@ -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))