diff --git a/router/java/src/net/i2p/router/transport/TransportImpl.java b/router/java/src/net/i2p/router/transport/TransportImpl.java index 422254fa5157cd33cc66a45b0ad9307d5571b8d4..ad6d61a9ce094b2bfebe557c75e247d9d79fb516 100644 --- a/router/java/src/net/i2p/router/transport/TransportImpl.java +++ b/router/java/src/net/i2p/router/transport/TransportImpl.java @@ -846,10 +846,10 @@ public abstract class TransportImpl implements Transport { public void mayDisconnect(Hash peer) {} public boolean isUnreachable(Hash peer) { - long now = _context.clock().now(); synchronized (_unreachableEntries) { Long when = _unreachableEntries.get(peer); if (when == null) return false; + long now = _context.clock().now(); if (when.longValue() + UNREACHABLE_PERIOD < now) { _unreachableEntries.remove(peer); return false; @@ -910,10 +910,10 @@ public abstract class TransportImpl implements Transport { * This is NOT reset if the peer contacts us. */ public boolean wasUnreachable(Hash peer) { - long now = _context.clock().now(); synchronized (_wasUnreachableEntries) { Long when = _wasUnreachableEntries.get(peer); if (when != null) { + long now = _context.clock().now(); if (when.longValue() + WAS_UNREACHABLE_PERIOD < now) { _unreachableEntries.remove(peer); return false;