From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/77476 Path: news.gmane.org!not-for-mail From: Tassilo Horn Newsgroups: gmane.emacs.gnus.general Subject: Re: Debugger entered--Lisp error: (overflow-error "13419098521433281274") Date: Thu, 03 Mar 2011 09:11:18 +0100 Message-ID: <87mxlcpqs9.fsf@member.fsf.org> References: <87lj0x4k59.fsf@fastmail.fm> <87lj0x72ce.fsf@member.fsf.org> <87aahdmg51.fsf@lifelogs.com> <87oc5ti7js.fsf@member.fsf.org> <871v2pkzrg.fsf@lifelogs.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1299139968 6775 80.91.229.12 (3 Mar 2011 08:12:48 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 3 Mar 2011 08:12:48 +0000 (UTC) Cc: ding@gnus.org, Andreas Schwab To: Ted Zlatanov Original-X-From: ding-owner+M25799@lists.math.uh.edu Thu Mar 03 09:12:44 2011 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Pv3eN-0006F9-Ky for ding-account@gmane.org; Thu, 03 Mar 2011 09:12:43 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1Pv3d6-0002g8-Hc; Thu, 03 Mar 2011 02:11:24 -0600 Original-Received: from mx1.math.uh.edu ([129.7.128.32]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1Pv3d4-0002fn-BE for ding@lists.math.uh.edu; Thu, 03 Mar 2011 02:11:22 -0600 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx1.math.uh.edu with esmtp (Exim 4.72) (envelope-from ) id 1Pv3d2-0007aN-Rs for ding@lists.math.uh.edu; Thu, 03 Mar 2011 02:11:22 -0600 Original-Received: from deliver.uni-koblenz.de ([141.26.64.15]) by quimby.gnus.org with esmtp (Exim 4.72) (envelope-from ) id 1Pv3d1-0001jG-TF for ding@gnus.org; Thu, 03 Mar 2011 09:11:19 +0100 Original-Received: from localhost (localhost [127.0.0.1]) by deliver.uni-koblenz.de (Postfix) with ESMTP id 7E3D47815EDB; Thu, 3 Mar 2011 09:11:19 +0100 (CET) Original-Received: from deliver.uni-koblenz.de ([127.0.0.1]) by localhost (deliver.uni-koblenz.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 03746-06; Thu, 3 Mar 2011 09:11:18 +0100 (CET) X-CHKRCPT: Envelopesender noch tassilo@member.fsf.org Original-Received: from thinkpad (tsdh.uni-koblenz.de [141.26.67.142]) by deliver.uni-koblenz.de (Postfix) with ESMTP id 821287816F5C; Thu, 3 Mar 2011 09:11:18 +0100 (CET) In-Reply-To: <871v2pkzrg.fsf@lifelogs.com> (Ted Zlatanov's message of "Wed, 02 Mar 2011 14:56:19 -0600") User-Agent: Gnus/5.110014 (No Gnus v0.14) Emacs/24.0.50 (gnu/linux) X-Virus-Scanned: amavisd-new at uni-koblenz.de X-Spam-Score: -4.9 (----) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:77476 Archived-At: Ted Zlatanov writes: Hi Ted, >>> To fix it now, I would replace such large numbers with a truncated >>> version, which can be done safely with a regex before the reader >>> sees the input. But I'll let Lars decide, he knows that code best. > > TH> But that huge number is not used by gnus, anyway. It is `read' > TH> but only the UID and FLAGS values are saved. So IMHO, the proper > TH> fix is to put a condition-case around the `read' that picks the > TH> UID and FLAGS with string-matching if an overflow-error occurs. > > Yeah, that would work too, but it's a hack either way. My way would > be less work since we just rewrite that number to 1 or whatever, which > is one extra line of code. If you want to submit a patch for either > hack go ahead, otherwise I'll wait for Lars to fix it. I've now combined both approaches. A condition-case handler simply deletes the big number and `read's again. That fixes the issue for me. I added a FIXME and comment, too. Maybe Lars has some better idea how to deal with that. Since that number occurs as value of MODSEQ (which Gnus doesn't use), is the HIGHESTMODSEQ (which Gnus reads and stores as number) also a candidate for overflowing? It probably is, so it might be better to handle it as string just like the UIDVALIDITY. Bye, Tassilo -- Sent from my Emacs