Author: toad
Date: 2007-02-03 18:47:54 +0000 (Sat, 03 Feb 2007)
New Revision: 11665
Modified:
trunk/freenet/src/freenet/node/PeerNode.java
Log:
Another locking fix
Modified: trunk/freenet/src/freenet/node/PeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNode.java 2007-02-03 18:45:08 UTC
(rev 11664)
+++ trunk/freenet/src/freenet/node/PeerNode.java 2007-02-03 18:47:54 UTC
(rev 11665)
@@ -1574,12 +1574,11 @@
*/
public void verified(KeyTracker tracker) {
long now = System.currentTimeMillis();
+ KeyTracker completelyDeprecatedTracker;
synchronized(this) {
if(tracker == unverifiedTracker) {
if(logMINOR) Logger.minor(this, "Promoting unverified
tracker "+tracker+" for "+getPeer());
- if(previousTracker != null) {
- previousTracker.completelyDeprecated(tracker);
- }
+ completelyDeprecatedTracker = previousTracker;
previousTracker = currentTracker;
if(previousTracker != null)
previousTracker.deprecated();
@@ -1594,6 +1593,9 @@
}
setPeerNodeStatus(now);
node.peers.addConnectedPeer(this);
+ if(completelyDeprecatedTracker != null) {
+
completelyDeprecatedTracker.completelyDeprecated(tracker);
+ }
}
private synchronized boolean invalidVersion() {