Author: toad
Date: 2008-02-19 16:44:14 +0000 (Tue, 19 Feb 2008)
New Revision: 18067
Modified:
trunk/freenet/src/freenet/node/ResettingHTLProbeRequestSender.java
Log:
Prevent NPE in probe requests when dealing with old nodes
Modified: trunk/freenet/src/freenet/node/ResettingHTLProbeRequestSender.java
===================================================================
--- trunk/freenet/src/freenet/node/ResettingHTLProbeRequestSender.java
2008-02-19 16:18:13 UTC (rev 18066)
+++ trunk/freenet/src/freenet/node/ResettingHTLProbeRequestSender.java
2008-02-19 16:44:14 UTC (rev 18067)
@@ -274,6 +274,7 @@
// Don't use the new nearestLoc, since we don't on
requests, and anyway
// it doesn't make any sense to do so - it's only valid
within that pocket.
Message sub =
msg.getSubMessage(DMT.FNPRHReturnSubMessage);
+ if(sub != null) {
double newBest = sub.getDouble(DMT.BEST_LOCATION);
if(newBest > target && newBest < best)
best = newBest;
@@ -281,6 +282,11 @@
uniqueCounter += Math.max(0,
msg.getShort(DMT.UNIQUE_COUNTER));
// linearCounter is unchanged - it's only valid on a
Reply
// FIXME ideally we'd return it here if we don't manage
to reroute.
+ } else {
+ counter++;
+ uniqueCounter++;
+ htl--;
+ }
break;
}