GNU bug report logs - #49770
[PATCH] rmailsum: error when message contains no From header

Previous Next

Package: emacs;

Reported by: Nick Gasson <nick <at> nickg.me.uk>

Date: Thu, 29 Jul 2021 14:35:02 UTC

Severity: normal

Tags: patch

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Nick Gasson <nick <at> nickg.me.uk>
Subject: bug#49770: closed (Re: bug#49770: [PATCH] rmailsum: error when
 message contains no From header)
Date: Thu, 29 Jul 2021 15:43:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#49770: [PATCH] rmailsum: error when message contains no From header

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 49770 <at> debbugs.gnu.org.

-- 
49770: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=49770
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Eli Zaretskii <eliz <at> gnu.org>
To: Nick Gasson <nick <at> nickg.me.uk>
Cc: 49770-done <at> debbugs.gnu.org
Subject: Re: bug#49770: [PATCH] rmailsum: error when message contains no From
 header
Date: Thu, 29 Jul 2021 18:41:41 +0300
> From: Nick Gasson <nick <at> nickg.me.uk>
> Date: Thu, 29 Jul 2021 21:24:13 +0800
> Cc: Nick Gasson <nick <at> nickg.me.uk>
> 
> If you open a mbox file in rmail-mode containing a message without a
> "From" header and press "h" to display the summary, the following
> error occurs:
> 
>   Debugger entered--Lisp error: (wrong-type-argument stringp nil)
>     string-match("\n" nil)
>     rmail-header-summary()
>     rmail-create-summary(1 nil nil 101)
>     rmail-create-summary-line(1)
>     rmail-get-summary(1)
>     rmail-new-summary-1("All" (rmail-summary) nil nil)
>     rmail-new-summary("All" (rmail-summary) nil)
>     rmail-summary()
>     funcall-interactively(rmail-summary)
>     call-interactively(rmail-summary nil nil)
> 
> * lisp/mail/rmailsum.el (rmail-header-summary): Check if from header
> is set before scanning it for newlines.

Thanks, installed (with a tiny change: I prefer an explicit 'stringp'
test where we must have a string).

This contribution was small enough for us to be able to receive it
without a copyright assignment, but if you'd like to be able to
contribute in the future without restrictions, I suggest to start your
copyright assignment paperwork rolling.  If you'd like that, I will
send you the form to fill and the instructions to go with it.

[Message part 3 (message/rfc822, inline)]
From: Nick Gasson <nick <at> nickg.me.uk>
To: bug-gnu-emacs <at> gnu.org
Cc: Nick Gasson <nick <at> nickg.me.uk>
Subject: [PATCH] rmailsum: error when message contains no From header
Date: Thu, 29 Jul 2021 21:24:13 +0800
If you open a mbox file in rmail-mode containing a message without a
"From" header and press "h" to display the summary, the following
error occurs:

  Debugger entered--Lisp error: (wrong-type-argument stringp nil)
    string-match("\n" nil)
    rmail-header-summary()
    rmail-create-summary(1 nil nil 101)
    rmail-create-summary-line(1)
    rmail-get-summary(1)
    rmail-new-summary-1("All" (rmail-summary) nil nil)
    rmail-new-summary("All" (rmail-summary) nil)
    rmail-summary()
    funcall-interactively(rmail-summary)
    call-interactively(rmail-summary nil nil)

* lisp/mail/rmailsum.el (rmail-header-summary): Check if from header
is set before scanning it for newlines.
---
 lisp/mail/rmailsum.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/mail/rmailsum.el b/lisp/mail/rmailsum.el
index 44cff21b0628..436bc78250cb 100644
--- a/lisp/mail/rmailsum.el
+++ b/lisp/mail/rmailsum.el
@@ -758,7 +758,7 @@ rmail-header-summary
 		    len mch lo newline)
                ;; If there are multiple lines in FROM,
                ;; discard up to the last newline in it.
-               (while (setq newline (string-match "\n" from))
+               (while (and from (setq newline (string-match "\n" from)))
                  (setq from (substring from (1+ newline))))
 	       (if (or (null from)
 		       (string-match
-- 
2.30.2




This bug report was last modified 4 years and 12 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.