GNU bug report logs - #34252
27.0.50; rmail-get-new-mail fails

Previous Next

Package: emacs;

Reported by: John <jpff <at> codemist.co.uk>

Date: Tue, 29 Jan 2019 21:24:02 UTC

Severity: normal

Found in version 27.0.50

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

Bug is archived. No further changes may be made.

Full log


Message #11 received at 34252 <at> debbugs.gnu.org (full text, mbox):

From: john <jpff <at> codemist.co.uk>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 34252 <at> debbugs.gnu.org
Subject: Re: bug#34252: 27.0.50; rmail-get-new-mail fails
Date: Wed, 30 Jan 2019 18:10:29 +0000 (GMT)
This could be due to a kernel/NFS problem but te effect on using rmail for 
my user-base is a real problem.  The problems with proto being nil in
rmail-remote-proto-p is clearly wrong and despite your statement it does 
happen to me on two diffrent computers/users attempting to read mail in 
emacs via rmail.

This backtrace was before I changed anything

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
   string-match("^\\(imap\\|pop\\)s?$" nil nil)
   rmail-remote-proto-p(nil)
   rmail-insert-inbox-text(("/var/spool/mail/jpff" 
"/mnt/snout/home/jpff/mbox")
t)
   rmail-get-new-mail-1(nil ("/var/spool/mail/jpff"
"/mnt/snout/home/jpff/mbox") nil)
   rmail-get-new-mail(nil)
   funcall-interactively(rmail-get-new-mail nil)
   call-interactively(rmail-get-new-mail nil nil)
   command-execute(rmail-get-new-mail)

Note argument to rmail-remote-proto-p is nil.  "/var/spool/mail/jpff"
is a local file and is always zero length.  "/mnt/snout/home/jpff/mbox" is 
mounted from a Debian system using NFS version 3


The NFS issue is described in 
https://utcc.utoronto.ca/~cks/space/blog/linux/KernelNFSPageBug
which someone pointed me at....

Thank you for your attention

==John ffitch


 On Tue, 29 Jan 2019, Glenn Morris wrote:

> John wrote:
>
>> in case of reading a mail box on a nfs-mounted disk
>
> It's hard to see how that could make a difference to Rmail.
>
>> --- a/lisp/mail/rmail.el
>> +++ b/lisp/mail/rmail.el
>> @@ -1902,7 +1902,7 @@ rmail-parse-url
>>             (host  (substring file (or (match-end 2)
>>                                        (+ 3 (match-end 1))))))
>>
>> -       (if (rmail-remote-proto-p proto)
>> +       (if (and proto (rmail-remote-proto-p proto))
>
> It's not possible for proto to be nil here.
>
>>             (if (not pass)
>>                 (when rmail-remote-password-required
>>                   (setq got-password (not (rmail-have-password)))
>> @@ -1913,7 +1913,7 @@ rmail-parse-url
>>               ;; does not really like it, in spite of the movemail spec.
>>               (setq file (concat proto "://" user "@" host))))
>>
>> -       (if (rmail-movemail-variant-p 'emacs)
>> +       (if (and proto (rmail-movemail-variant-p 'emacs))
>
> Or here.
>
>>             (if (string-equal proto "pop")
>>                 (list (concat "po:" user ":" host)
>>                       proto
>> @@ -2072,7 +2072,7 @@ rmail-insert-inbox-text
>>                    ;; If we just read the password, most likely it is
>>                    ;; wrong.  Otherwise, see if there is a specific
>>                    ;; reason to think that the problem is a wrong passwd.
>> -                  (if (and (rmail-remote-proto-p proto)
>> +                  (if (and proto (rmail-remote-proto-p proto)
>
> Here I think you may be correct.
>
>




This bug report was last modified 6 years and 112 days ago.

Previous Next


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