diff --git a/core/java/src/net/i2p/client/I2PSessionImpl.java b/core/java/src/net/i2p/client/I2PSessionImpl.java index e101ff7252c06a28601f94a07949b6a22b3ecddb..8b4389e47da3a78db1799e995047e4516cc7bcc9 100644 --- a/core/java/src/net/i2p/client/I2PSessionImpl.java +++ b/core/java/src/net/i2p/client/I2PSessionImpl.java @@ -864,13 +864,16 @@ abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2CPMessa return null; LookupWaiter waiter = new LookupWaiter(h); _pendingLookups.offer(waiter); - sendMessage(new DestLookupMessage(h)); try { - synchronized (waiter) { - waiter.wait(maxWait); - } - } catch (InterruptedException ie) {} - _pendingLookups.remove(waiter); + sendMessage(new DestLookupMessage(h)); + try { + synchronized (waiter) { + waiter.wait(maxWait); + } + } catch (InterruptedException ie) {} + } finally { + _pendingLookups.remove(waiter); + } return waiter.destination; }