From 6396712ec488e5113e9367dfa6184f6989c8c360 Mon Sep 17 00:00:00 2001
From: Craig Robbins <kde.psych@gmail.com>
Date: Sun, 26 Oct 2014 15:32:49 +1000
Subject: [PATCH] Fix #1733: An unhandled exception occurred: GetPeer: Peer not
 found (possible timeout)

---
 src/connection.cpp | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/connection.cpp b/src/connection.cpp
index ee5b1eb0b..64ef9a50e 100644
--- a/src/connection.cpp
+++ b/src/connection.cpp
@@ -2322,7 +2322,12 @@ bool ConnectionReceiveThread::checkIncomingBuffers(Channel *channel,
 SharedBuffer<u8> ConnectionReceiveThread::processPacket(Channel *channel,
 		SharedBuffer<u8> packetdata, u16 peer_id, u8 channelnum, bool reliable)
 {
-	PeerHelper peer = m_connection->getPeer(peer_id);
+	PeerHelper peer = m_connection->getPeerNoEx(peer_id);
+
+	if (!peer) {
+		errorstream << "Peer not found (possible timeout)" << std::endl;
+		throw ProcessedSilentlyException("Peer not found (possible timeout)");
+	}
 
 	if(packetdata.getSize() < 1)
 		throw InvalidIncomingDataException("packetdata.getSize() < 1");
-- 
GitLab