From 80dc2844072ca6186d55c41b0507011c0890c498 Mon Sep 17 00:00:00 2001 From: Ben Adams Date: Tue, 29 Dec 2015 08:50:59 +0000 Subject: [PATCH] Checked length --- .../Infrastructure/MemoryPoolIterator2.cs | 29 ++++++++++--------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/MemoryPoolIterator2.cs b/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/MemoryPoolIterator2.cs index 207abfba52..8b97da1eef 100644 --- a/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/MemoryPoolIterator2.cs +++ b/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/MemoryPoolIterator2.cs @@ -513,21 +513,24 @@ namespace Microsoft.AspNet.Server.Kestrel.Infrastructure var block = _block; var index = _index; var length = 0; - while (true) + checked { - if (block == end._block) + while (true) { - return length + end._index - index; - } - else if (block.Next == null) - { - throw new InvalidOperationException("end did not follow iterator"); - } - else - { - length += block.End - index; - block = block.Next; - index = block.Start; + if (block == end._block) + { + return length + end._index - index; + } + else if (block.Next == null) + { + throw new InvalidOperationException("end did not follow iterator"); + } + else + { + length += block.End - index; + block = block.Next; + index = block.Start; + } } } }