Author: toad
Date: 2007-03-10 02:36:24 +0000 (Sat, 10 Mar 2007)
New Revision: 12084

Modified:
   trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
Log:
Fix NPE

Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
===================================================================
--- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2007-03-09 
22:56:29 UTC (rev 12083)
+++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2007-03-10 
02:36:24 UTC (rev 12084)
@@ -869,6 +869,7 @@
        } finally {
                if(t != null)
                        t.abort();
+               t = null;
        }
        System.out.println("Completing shrink"); // FIXME remove

@@ -876,6 +877,7 @@
        WrapperManager.signalStarting(5*60*1000 + 
(totalUnwantedBlocks-wantedMoveNums.length) * 100);
        // If there are any slots left over, they must be free.
        freeBlocks.clear();
+               t = environment.beginTransaction(null,null);
        for(int i=wantedMoveNums.length;i<totalUnwantedBlocks;i++) {
                long blockNo;
                String reason;
@@ -892,7 +894,7 @@
                        if(i % 1024 == 0) {
                                System.out.println("Trimmed surplus keys in 
database: 
"+(i-wantedMoveNums.length)+"/"+(totalUnwantedBlocks-wantedMoveNums.length));
                                t.commit();
-                               if(i == 
unwantedMoveNums.length+freeEarlySlots.length-1)
+                               if(i == totalUnwantedBlocks-1)
                                        t = null;
                                else
                                        t = 
environment.beginTransaction(null,null);


Reply via email to