Author: toad
Date: 2007-03-24 19:50:52 +0000 (Sat, 24 Mar 2007)
New Revision: 12332

Modified:
   trunk/freenet/src/freenet/node/PeerManager.java
Log:
Another sync fix

Modified: trunk/freenet/src/freenet/node/PeerManager.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerManager.java     2007-03-24 19:49:32 UTC 
(rev 12331)
+++ trunk/freenet/src/freenet/node/PeerManager.java     2007-03-24 19:50:52 UTC 
(rev 12332)
@@ -1023,7 +1023,10 @@
         * Update hadRoutableConnectionCount/routableConnectionCheckCount on 
peers if the timer has expired
         */
        public void maybeUpdatePeerNodeRoutableConnectionStats(long now) {
-               if(now > nextRoutableConnectionStatsUpdateTime) {
+               synchronized(this) {
+                       if(now <= nextRoutableConnectionStatsUpdateTime) return;
+                       nextRoutableConnectionStatsUpdateTime = now + 
routableConnectionStatsUpdateInterval;
+               }
                        if(-1 != nextRoutableConnectionStatsUpdateTime) {
                                PeerNode[] peerList = myPeers;
                                for(int i=0;i<peerList.length;i++) {
@@ -1031,8 +1034,6 @@
                                        pn.checkRoutableConnectionStatus();
                                }
                        }
-                       nextRoutableConnectionStatsUpdateTime = now + 
routableConnectionStatsUpdateInterval;
-               }
        }

 }


Reply via email to