From 19d463ae1c0faaf08a0783a01db81eae0a271b62 Mon Sep 17 00:00:00 2001 From: Mattes D Date: Mon, 26 Jan 2015 14:49:51 +0100 Subject: Fixed a deadlock in cClientHandle network sending. --- src/ClientHandle.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/ClientHandle.h') diff --git a/src/ClientHandle.h b/src/ClientHandle.h index f5b7faede..8129d6a50 100644 --- a/src/ClientHandle.h +++ b/src/ClientHandle.h @@ -376,9 +376,13 @@ private: Protected by m_CSIncomingData. */ AString m_IncomingData; - /** Protects data going out through m_Link against multi-threaded sending. */ + /** Protects m_OutgoingData against multithreaded access. */ cCriticalSection m_CSOutgoingData; + /** Buffer for storing outgoing data from any thread; will get sent in Tick() (to prevent deadlocks). + Protected by m_CSOutgoingData. */ + AString m_OutgoingData; + Vector3d m_ConfirmPosition; cPlayer * m_Player; -- cgit v1.2.3