Author: toad
Date: 2008-02-16 16:18:32 +0000 (Sat, 16 Feb 2008)
New Revision: 18002
Modified:
trunk/freenet/src/freenet/client/async/USKManager.java
trunk/freenet/src/freenet/client/async/USKRetriever.java
Log:
Check for negative edition numbers
Modified: trunk/freenet/src/freenet/client/async/USKManager.java
===================================================================
--- trunk/freenet/src/freenet/client/async/USKManager.java 2008-02-16
16:17:50 UTC (rev 18001)
+++ trunk/freenet/src/freenet/client/async/USKManager.java 2008-02-16
16:18:32 UTC (rev 18002)
@@ -164,6 +164,10 @@
public void subscribe(USK origUSK, USKCallback cb, boolean
runBackgroundFetch, Object client) {
USKFetcher sched = null;
long ed = origUSK.suggestedEdition;
+ if(ed < 0) {
+ Logger.error(this, "Subscribing to USK with negative
edition number: "+ed);
+ ed = -ed;
+ }
long curEd;
curEd = lookup(origUSK);
synchronized(this) {
Modified: trunk/freenet/src/freenet/client/async/USKRetriever.java
===================================================================
--- trunk/freenet/src/freenet/client/async/USKRetriever.java 2008-02-16
16:17:50 UTC (rev 18001)
+++ trunk/freenet/src/freenet/client/async/USKRetriever.java 2008-02-16
16:18:32 UTC (rev 18002)
@@ -31,6 +31,10 @@
}
public void onFoundEdition(long l, USK key) {
+ if(l < 0) {
+ Logger.error(this, "Found negative edition: "+l+" for
"+key+" !!!");
+ return;
+ }
// Create a SingleFileFetcher for the key (as an SSK).
// Put the edition number into its context object.
// Put ourself as callback.