MAILER-DAEMON@cbnewsh.ATT.COM (03/22/89)
======= command failed =======
COMMAND: /bin/lmail 'wjc'
======= standard error follows =======
lmail: Can't send to wjc
lmail: Return to cis.ohio-state.edu!info-gnus-english
bad system name: cis.ohio-state.edu
uux failed ( 11 )
======= text of message follows =======
Path: cbnewsh!att!pacbell!lll-winken!csd4.milw.wisc.edu!mailrus!tut.cis.ohio-state.edu!photon.stars.flab.fujitsu.junet!umerin
From: umerin@photon.stars.flab.fujitsu.junet (Masanobu UMEDA)
Newsgroups: gnu.emacs.gnus
Subject: Infinite loop bug in nntp-retrieve-headers
Message-ID: <8903180250.AA00465@photon.stars.flab.fujitsu.junet>
Date: 18 Mar 89 02:50:42 GMT
References: <POPOVICH.89Mar12165650@park.cs.columbia.edu>
Distribution: gnu
Organization: The Internet
Lines: 55
Date: 12 Mar 89 21:56:50 GMT
From: fgw!uunet!columbia.edu!cs!popovich (Steve Popovich)
Organization: Columbia University
This message applies to GNUS version 3.11.
There is a bug in nntp-retrieve-headers that can cause an infinite
loop when selecting a newsgroup. The bug appears when the NNTP server
sends GNUS a header that doesn't start with any of the keywords it is
expecting.
I hope the following patch will solve these kinds of problems. Please
try it.
Masanobu UMEDA
umerin@flab.Fujitsu.JUNET
umerin%flab.Fujitsu.JUNET@uunet.uu.NET
*** /tmp/,RCSt1a00422 Sat Mar 18 11:18:25 1989
--- nntp.el Sat Mar 18 11:13:42 1989
***************
*** 271,276 ****
--- 271,279 ----
(setq xref (buffer-substring (match-beginning 1)
(match-end 1)))
(forward-line 1)))
+ ;; Skip invalid field (ex. Subject:abc)
+ (if (looking-at "^[^:]*:[^ \t]")
+ (forward-line 1))
)
(if (null subject)
(setq subject "(None)"))
***************
*** 606,614 ****
;; Initialize communication buffer.
(setq nntp-server-buffer (get-buffer-create " *nntpd*"))
(set-buffer nntp-server-buffer)
- (kill-all-local-variables)
(buffer-flush-undo (current-buffer))
(erase-buffer)
(setq nntp-server-process
(open-network-stream "nntpd" (current-buffer)
host (or service "nntp")))
--- 609,618 ----
;; Initialize communication buffer.
(setq nntp-server-buffer (get-buffer-create " *nntpd*"))
(set-buffer nntp-server-buffer)
(buffer-flush-undo (current-buffer))
(erase-buffer)
+ (kill-all-local-variables)
+ (setq case-fold-search t) ;Should ignore case.
(setq nntp-server-process
(open-network-stream "nntpd" (current-buffer)
host (or service "nntp")))