It looks like my last attempt didn't get through, so once more:
-------- Original Message --------
Subject: 	Off by one error in SetRevisionIndex
Date: 	Thu, 21 Jun 2007 18:54:02 +0200
From: 	Tomas Kopal <Tomas.Kopal@altap.cz>
To: 	dev@subversion.tigris.org
Hi all,
I started using TortoiseSVN recently, but it keeps crashing on me. So
grabbed the sources and went looking for problems. So, here is the first
one I found :-).
Index: RevisionIndex.cpp
===================================================================
--- RevisionIndex.cpp    (revision 9818)
+++ RevisionIndex.cpp    (working copy)
@@ -82,11 +82,11 @@
     else
     {
         revision_t size = (revision_t)indices.size();
-        if (revision - firstRevision > size)
+        if (revision - firstRevision >= size)
         {
             // efficently grow on the upper end
 
-            size_t toAdd = max (size, revision - firstRevision - size);
+            size_t toAdd = max (size, revision - firstRevision + 1 - size);
             indices.insert (indices.end(), toAdd, NO_INDEX);
         }
     }
Please, someone with more knowledge of the code, check the lower bound
growing too, I think it may suffer from the same problem.
Regards
Tomas
Received on Mon Jun 25 11:37:06 2007