Mercurial > emacs
changeset 112092:c343ad0f54f7
Small mail-utils fix for bug 7760.
* lisp/mail/mail-utils.el (mail-mbox-from): Handle From: headers with
multiple addresses.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Sat, 01 Jan 2011 18:35:23 -0800 |
parents | ee29e7a182bf |
children | f8b430cb91a7 |
files | lisp/ChangeLog lisp/mail/mail-utils.el |
diffstat | 2 files changed, 20 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Fri Dec 31 21:17:53 2010 +0100 +++ b/lisp/ChangeLog Sat Jan 01 18:35:23 2011 -0800 @@ -1,3 +1,8 @@ +2011-01-02 Glenn Morris <rgm@gnu.org> + + * mail/mail-utils.el (mail-mbox-from): Handle From: headers with + multiple addresses. (Bug#7760) + 2010-12-31 Michael Albinus <michael.albinus@gmx.de> * net/tramp.el (tramp-methods): Add recursive options to "scpc", @@ -12324,7 +12329,7 @@ ;; coding: utf-8 ;; End: - Copyright (C) 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc. This file is part of GNU Emacs.
--- a/lisp/mail/mail-utils.el Fri Dec 31 21:17:53 2010 +0100 +++ b/lisp/mail/mail-utils.el Sat Jan 01 18:35:23 2011 -0800 @@ -1,7 +1,7 @@ ;;; mail-utils.el --- utility functions used both by rmail and rnews ;; Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, -;; 2009, 2010 Free Software Foundation, Inc. +;; 2009, 2010, 2011 Free Software Foundation, Inc. ;; Maintainer: FSF ;; Keywords: mail, news @@ -398,13 +398,19 @@ (defun mail-mbox-from () "Return an mbox \"From \" line for the current message. The buffer should be narrowed to just the header." - (let ((from (or (mail-fetch-field "from") - (mail-fetch-field "really-from") - (mail-fetch-field "sender") - (mail-fetch-field "return-path") - "unknown")) - (date (mail-fetch-field "date"))) - (format "From %s %s\n" (mail-strip-quoted-names from) + (let* ((from (mail-strip-quoted-names (or (mail-fetch-field "from") + (mail-fetch-field "really-from") + (mail-fetch-field "sender") + (mail-fetch-field "return-path") + "unknown"))) + (date (mail-fetch-field "date")) + ;; A From: header can contain multiple addresses, a "From " + ;; line must contain only one. (Bug#7760) + ;; See eg RFC 5322, 3.6.2. Originator Fields. + (end (string-match "[ \t]*[,\n]" from))) + (format "From %s %s\n" (if end + (substring from 0 end) + from) (or (and date (ignore-errors (current-time-string (date-to-time date))))