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;
                }



Reply via email to