INN commit: branches/2.5 (4 files)

INN Commit rra at isc.org
Mon Feb 8 21:05:54 UTC 2010


    Date: Monday, February 8, 2010 @ 13:05:54
  Author: iulius
Revision: 8966

When using tradindexed, the overview data for a cancelled article is now
properly immediately removed from the overview.

OVcancel was failing because the article number could be higher than the
cached high water mark.  The overview data is now reopened so as to check
the actual high water mark.
The article number was not always parsed without error (a trailing "\r\n"
may be present).

Thanks to Lars Magne Ingebrigtsen for the patch.

Modified:
  branches/2.5/CONTRIBUTORS
  branches/2.5/doc/pod/news.pod
  branches/2.5/storage/ov.c
  branches/2.5/storage/tradindexed/tradindexed.c

-----------------------------------+
 CONTRIBUTORS                      |    3 ++-
 doc/pod/news.pod                  |    6 ++++++
 storage/ov.c                      |    6 +++---
 storage/tradindexed/tradindexed.c |    5 +++++
 4 files changed, 16 insertions(+), 4 deletions(-)

Modified: CONTRIBUTORS
===================================================================
--- CONTRIBUTORS	2010-02-08 21:05:33 UTC (rev 8965)
+++ CONTRIBUTORS	2010-02-08 21:05:54 UTC (rev 8966)
@@ -271,4 +271,5 @@
 David Hlacik, Andreas Mattheiss, James Ralston, Wim Lewis, Johan van Selst,
 Wolfgang M. Weyand, Berend Reitsma, William Kronert, Petr Novopashenniy,
 Steve Crook, John F. Morse, Tim Woodall, Jonathan Kamens, Kamil Jonca,
-S.P. Zeidler, Nix, Florian Schlichting, Torsten Jerzembeck, Harald Dunkel
+S.P. Zeidler, Nix, Florian Schlichting, Torsten Jerzembeck, Harald Dunkel,
+Lars Magne Ingebrigtsen

Modified: doc/pod/news.pod
===================================================================
--- doc/pod/news.pod	2010-02-08 21:05:33 UTC (rev 8965)
+++ doc/pod/news.pod	2010-02-08 21:05:54 UTC (rev 8966)
@@ -288,6 +288,12 @@
 
 =item *
 
+When using tradindexed, the overview data for a cancelled article is now
+properly immediately removed from the overview.  Thanks to Lars Magne
+Ingebrigtsen for the patch.
+
+=item *
+
 B<batcher> has not supported the retrieval of an article with its
 file name for a long time.  The B<-S> flag is therefore removed.
 

Modified: storage/ov.c
===================================================================
--- storage/ov.c	2010-02-08 21:05:33 UTC (rev 8965)
+++ storage/ov.c	2010-02-08 21:05:54 UTC (rev 8966)
@@ -242,7 +242,7 @@
     ARTHANDLE *art;
     const char *xref, *xrefend, *group;
     size_t xreflen, i;
-    char *xref_copy, *p, *end;
+    char *xref_copy, *p;
     ARTNUM artnum;
     struct cvector *groups;
 
@@ -276,8 +276,8 @@
             continue;
         *p = '\0';
         errno = 0;
-        artnum = strtoul(p + 1, &end, 10);
-        if (artnum == 0 || *end != '\0' || errno == ERANGE)
+        artnum = strtoul(p + 1, NULL, 10);
+        if (artnum == 0 || errno == ERANGE)
             continue;
 
         /* Don't worry about the return status; the article may have already

Modified: storage/tradindexed/tradindexed.c
===================================================================
--- storage/tradindexed/tradindexed.c	2010-02-08 21:05:33 UTC (rev 8965)
+++ storage/tradindexed/tradindexed.c	2010-02-08 21:05:54 UTC (rev 8966)
@@ -229,6 +229,11 @@
     data = data_cache_open(tradindexed, group, entry);
     if (data == NULL)
         return false;
+    if (artnum > data->high) {
+        data = data_cache_reopen(tradindexed, group, entry);
+        if (data == NULL)
+            return false;
+    }
     return tdx_data_cancel(data, artnum);
 }
 




More information about the inn-committers mailing list