From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/51759 Path: main.gmane.org!not-for-mail From: Kevin Greiner Newsgroups: gmane.emacs.gnus.general Subject: Re: gnus-newsgroup-unseen gives gnus-dup-unsuppress-article error Date: Wed, 23 Apr 2003 00:35:24 -0500 Sender: ding-owner@lists.math.uh.edu Message-ID: References: NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1051076115 21699 80.91.224.249 (23 Apr 2003 05:35:15 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Wed, 23 Apr 2003 05:35:15 +0000 (UTC) Original-X-From: ding-owner+M302@lists.math.uh.edu Wed Apr 23 07:35:14 2003 Return-path: Original-Received: from malifon.math.uh.edu ([129.7.128.13]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 198CuX-0005do-00 for ; Wed, 23 Apr 2003 07:35:13 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by malifon.math.uh.edu with smtp (Exim 3.20 #1) id 198Cuy-0001uP-00; Wed, 23 Apr 2003 00:35:40 -0500 Original-Received: from sclp3.sclp.com ([64.157.176.121]) by malifon.math.uh.edu with smtp (Exim 3.20 #1) id 198Cul-0001uJ-00 for ding@lists.math.uh.edu; Wed, 23 Apr 2003 00:35:27 -0500 Original-Received: (qmail 28937 invoked by alias); 23 Apr 2003 05:35:27 -0000 Original-Received: (qmail 28932 invoked from network); 23 Apr 2003 05:35:26 -0000 Original-Received: from quimby.gnus.org (80.91.224.244) by sclp3.sclp.com with SMTP; 23 Apr 2003 05:35:26 -0000 Original-Received: from news by quimby.gnus.org with local (Exim 3.12 #1 (Debian)) id 198CzP-00077q-00 for ; Wed, 23 Apr 2003 07:40:15 +0200 Original-To: ding@gnus.org Original-Path: not-for-mail Original-Newsgroups: gnus.ding Original-Lines: 72 Original-NNTP-Posting-Host: manchester-suites-iaf1047853.cust-rtr.ameritech.net Original-X-Trace: quimby.gnus.org 1051076415 27393 68.23.64.46 (23 Apr 2003 05:40:15 GMT) Original-X-Complaints-To: usenet@quimby.gnus.org Original-NNTP-Posting-Date: 23 Apr 2003 05:40:15 GMT User-Agent: Gnus/5.090019 (Oort Gnus v0.19) Emacs/21.2 (windows-nt) Cancel-Lock: sha1:ATal00eCJRn/Ej5B6cXwcLpsprw= Precedence: bulk Xref: main.gmane.org gmane.emacs.gnus.general:51759 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:51759 Ted Zlatanov writes: > On Tue, 22 Apr 2003, nk@viteno.net wrote: >> Ted Zlatanov writes: >> >>> is outside spam.el, in gnus-dup.el. I think the arrayp error is >>> happening when gnus-dup-unsuppress-article runs >>> >>> (gnus-data-header (gnus-data-find article)) >>> >>> and the article is somehow not available. I recently switched from >>> running through all the articles sequentially to using >>> gnus-newsgroup-unseen and gnus-newsgroup-unreads in >>> spam-mark-junk-as-spam-routine, could that be the problem? >> >> It seems to be the problem. I've just re-used version 6.92, ie >> before these changes, of spam.el and everything looks great. >> >> Hmm, is there a file I should, err, bring closer to reality in order >> to use the new features? > > I haven't seen the error you mention. Maybe it's Agent-related, I > don't know, but I use the latest spam.el and I get consistently marked > articles without errors. I don't use the Agent. > > You probably have spam-mark-only-unseen-as-spam set to t (the > default), right? In that case the error is with > gnus-newsgroup-unseen, it's somehow giving us articles that trigger an > error when I try to apply the spam-mark to them (in > gnus-dup-unsuppress-article). Can you try to debug > gnus-dup-unsuppress-article, using debug statements, to see where the > arrayp error is occurring? Since I can't duplicate your problem, you > need to trace through it on your side. Personally, I don't see the connection to the agent. I've put together this much but I don't use the spam features so this is about all that I can do. The macros in gnus-dup-unsupress-article expand as follows: (defun gnus-dup-unsuppress-article (article) "Stop suppression of ARTICLE." (let ((id (aref (nth 3 (assq article gnus-newsgroup-data)) 4))) ((if id (progn (setq gnus-dup-list-dirty t) (setq gnus-dup-list (delete id gnus-dup-list)) (unintern id gnus-dup-hashtb)))))) There's only the one aref so the error has to result from (assq article gnus-newsgroup-data) returning nil. The invalid article number that is passed to gnus-dup-unsuppress-article comes from spam-mark-junk-as-spam-routine and, yes Ted, it gets it from gnus-newsgroup-unseen. The initial value of gnus-newsgroup-unseen is computed by gnus-compute-unseen-list in gnus-sum.el. That function computes gnus-newsgroup-unseen as a subset of gnus-newsgroup-articles so the initial value of gnus-newsgroup-unseen appears to be OK. Can anyone explain how gnus-newsgroup-articles might be updated? If articles were removed from it, then gnus-newsgroup-unseen might become a superset of gnus-newsgroup-articles and that would cause the arrayp error. So far, that's all that I can identify. I hope that this helps. Kevin