fix: #210 Stack for saving decoded buffer overflow

This commit is contained in:
yuanyuanxiang
2025-10-22 02:57:24 +08:00
parent 11a77fda06
commit b0f622b9c4
10 changed files with 26 additions and 19 deletions

View File

@@ -155,12 +155,12 @@ void IOCPKCPServer::KCPUpdateLoop()
}
}
void IOCPKCPServer::Send2Client(CONTEXT_OBJECT* ContextObject, PBYTE szBuffer, ULONG ulOriginalLength)
BOOL IOCPKCPServer::Send2Client(CONTEXT_OBJECT* ContextObject, PBYTE szBuffer, ULONG ulOriginalLength)
{
if (!ContextObject || !ContextObject->kcp) return;
if (!ContextObject || !ContextObject->kcp) return FALSE;
ContextObject->OutCompressedBuffer.ClearBuffer();
if (!WriteContextData(ContextObject, szBuffer, ulOriginalLength))
return;
return FALSE;
{
std::lock_guard<std::mutex> lock(m_contextsMutex);
@@ -169,6 +169,7 @@ void IOCPKCPServer::Send2Client(CONTEXT_OBJECT* ContextObject, PBYTE szBuffer, U
(int)ContextObject->OutCompressedBuffer.GetBufferLength());
ikcp_flush(ContextObject->kcp);
}
return TRUE;
}
void IOCPKCPServer::Destroy()