From a9a51d0641db85b65f6b42974e36a9c4eb227a1a Mon Sep 17 00:00:00 2001 From: hondacrx Date: Mon, 15 Nov 2021 16:51:25 -0500 Subject: [PATCH] Fixes a crash when trying to login with wrong version launcher or no launcher. Caused bnetserver to enter a infinite loop. --- Source/BNetServer/Networking/RestSession.cs | 6 ------ Source/Framework/Networking/SSLSocket.cs | 6 ++++++ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Source/BNetServer/Networking/RestSession.cs b/Source/BNetServer/Networking/RestSession.cs index e33684290..ba9b1ef4b 100644 --- a/Source/BNetServer/Networking/RestSession.cs +++ b/Source/BNetServer/Networking/RestSession.cs @@ -25,12 +25,6 @@ namespace BNetServer.Networking public async override void ReadHandler(byte[] data, int receivedLength) { - if (receivedLength == 0) - { - CloseSocket(); - return; - } - var httpRequest = HttpHelper.ParseRequest(data, receivedLength); if (httpRequest == null) return; diff --git a/Source/Framework/Networking/SSLSocket.cs b/Source/Framework/Networking/SSLSocket.cs index 580befaae..f2a30cbd3 100644 --- a/Source/Framework/Networking/SSLSocket.cs +++ b/Source/Framework/Networking/SSLSocket.cs @@ -67,6 +67,12 @@ namespace Framework.Networking try { var result = await _stream.ReadAsync(_receiveBuffer, 0, _receiveBuffer.Length); + if (result == 0) + { + CloseSocket(); + return; + } + ReadHandler(_receiveBuffer, result); } catch (Exception ex)