r27273 - trunk/freenet/src/freenet/clients/http

[email protected] Fri, 24 Apr 2009 00:24:06 +0000
Newsgroups gmane.network.freenet.cvs
Message-ID <[email protected]>
Author: toad
Date: 2009-04-24 00:24:05 +0000 (Fri, 24 Apr 2009)
New Revision: 27273

Modified:
   trunk/freenet/src/freenet/clients/http/FProxyFetchInProgress.java
   trunk/freenet/src/freenet/clients/http/FProxyFetchWaiter.java
Log:
Only wait once!


Modified: trunk/freenet/src/freenet/clients/http/FProxyFetchInProgress.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/FProxyFetchInProgress.java	2009-04-23 20:22:54 UTC (rev 27272)
+++ trunk/freenet/src/freenet/clients/http/FProxyFetchInProgress.java	2009-04-24 00:24:05 UTC (rev 27273)
@@ -299,4 +299,12 @@
 	public synchronized boolean hasNotifiedFailure() {
 		return true;
 	}
+
+	public synchronized boolean hasWaited() {
+		return hasWaited;
+	}
+
+	public synchronized void setHasWaited() {
+		hasWaited = true;
+	}
 }

Modified: trunk/freenet/src/freenet/clients/http/FProxyFetchWaiter.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/FProxyFetchWaiter.java	2009-04-23 20:22:54 UTC (rev 27272)
+++ trunk/freenet/src/freenet/clients/http/FProxyFetchWaiter.java	2009-04-24 00:24:05 UTC (rev 27273)
@@ -6,6 +6,7 @@
 	public FProxyFetchWaiter(FProxyFetchInProgress progress2) {
 		this.progress = progress2;
 		if(progress.finished()) finished = true;
+		hasWaited = progress.hasWaited();
 	}
 
 	private final FProxyFetchInProgress progress;
@@ -28,6 +29,7 @@
 			}
 			waited = hasWaited;
 		}
+		progress.setHasWaited();
 		return progress.innerGetResult(waited);
 	}