From 853f2830049ff48def0be1a9542a8e24453f147e Mon Sep 17 00:00:00 2001 From: dudu Date: Tue, 7 May 2019 17:42:26 +0800 Subject: [PATCH] Break loop when reading 0 byte from NetworkStream Fix "Client Infinitely Hangs Following Memcached Server Reset"(#77) --- Enyim.Caching/Memcached/PooledSocket.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Enyim.Caching/Memcached/PooledSocket.cs b/Enyim.Caching/Memcached/PooledSocket.cs index 660969c0..3c06ec76 100755 --- a/Enyim.Caching/Memcached/PooledSocket.cs +++ b/Enyim.Caching/Memcached/PooledSocket.cs @@ -296,7 +296,7 @@ public async Task ReadAsync(byte[] buffer, int offset, int count) { int currentRead = await _inputStream.ReadAsync(buffer, offset, shouldRead); if (currentRead < 1) - continue; + break; read += currentRead; offset += currentRead; @@ -334,7 +334,7 @@ public void Read(byte[] buffer, int offset, int count) { int currentRead = _inputStream.Read(buffer, offset, shouldRead); if (currentRead < 1) - continue; + break; read += currentRead; offset += currentRead;