From xemacs-m  Thu Jan 23 09:35:35 1997
Received: from alphatech.com (erebus.alphatech.com [198.112.236.2])
          by xemacs.org (8.8.4/8.8.4) with SMTP
	  id JAA14858 for <xemacs-beta@xemacs.org>; Thu, 23 Jan 1997 09:35:28 -0600 (CST)
Received: from venus.alphatech.com by alphatech.com (4.1/SMI-4.1)
	id AA05162; Thu, 23 Jan 97 10:31:15 EST
Received: from pochacco.alphatech.com by venus.alphatech.com (4.1/SMI-4.1)
	id AA13898; Thu, 23 Jan 97 10:38:31 EST
Received: by pochacco.alphatech.com (SMI-8.6/SMI-SVR4)
	id KAA01543; Thu, 23 Jan 1997 10:30:20 -0500
Date: Thu, 23 Jan 1997 10:30:20 -0500
Message-Id: <199701231530.KAA01543@pochacco.alphatech.com>
From: greg@alphatech.com (Greg Klanderman)
To: xemacs-beta@xemacs.org (XEmacs beta list)
Subject: 19.15b4 one line patch to gnus/message.el
Reply-To: greg@alphatech.com


This one prevents all your saved buffers from being killed (as well as
the current frame) and then going into an infinite loop when sending a
message if you have been foolish enough to set `message-max-buffers'
to a number less than or equal to zero.

Yes, I know, I've now found message-kill-buffer-on-exit, and that's
what I wanted.

Details for those who care: message-buffer-list becomes nil, but pop
keeps returning buffer=nil, and not signalling an error.  now,
(buffer-name buffer) starts cycling thru all buffers and killing them,
since buffer=nil, going into an infinite loop once saved buffers are
exhausted.  Unclear why the frame gets killed.

Greg


--- message.el.orig	Sun Sep  8 19:49:10 1996
+++ message.el	Thu Jan 23 10:24:05 1997
@@ -2308,6 +2308,7 @@
   ;; list of buffers.
   (setq message-buffer-list (delq (current-buffer) message-buffer-list))
   (while (and message-max-buffers
+              message-buffer-list
 	      (>= (length message-buffer-list) message-max-buffers))
     ;; Kill the oldest buffer -- unless it has been changed.
     (let ((buffer (pop message-buffer-list)))

