1
- using System ;
1
+ using System ;
2
2
using System . Buffers ;
3
3
using System . IO ;
4
4
using System . Threading . Tasks ;
@@ -45,16 +45,16 @@ private static ValueTask<Packet> ReadPacketAfterHeader(ArraySegment<byte> header
45
45
46
46
var payloadBytesTask = bufferedByteReader . ReadBytesAsync ( byteHandler , payloadLength , ioBehavior ) ;
47
47
if ( payloadBytesTask . IsCompleted )
48
- return CreatePacketFromPayload ( payloadBytesTask . Result , payloadLength , packetSequenceNumber , protocolErrorBehavior ) ;
49
- return AddContinuation ( payloadBytesTask , payloadLength , packetSequenceNumber , protocolErrorBehavior ) ;
48
+ return CreatePacketFromPayload ( payloadBytesTask . Result , payloadLength , protocolErrorBehavior ) ;
49
+ return AddContinuation ( payloadBytesTask , payloadLength , protocolErrorBehavior ) ;
50
50
51
51
// NOTE: use a local function (with no captures) to defer creation of lambda objects
52
- ValueTask < Packet > AddContinuation ( ValueTask < ArraySegment < byte > > payloadBytesTask_ , int payloadLength_ , int packetSequenceNumber_ , ProtocolErrorBehavior protocolErrorBehavior_ )
53
- => payloadBytesTask_ . ContinueWith ( x => CreatePacketFromPayload ( x , payloadLength_ , packetSequenceNumber_ , protocolErrorBehavior_ ) ) ;
52
+ ValueTask < Packet > AddContinuation ( ValueTask < ArraySegment < byte > > payloadBytesTask_ , int payloadLength_ , ProtocolErrorBehavior protocolErrorBehavior_ )
53
+ => payloadBytesTask_ . ContinueWith ( x => CreatePacketFromPayload ( x , payloadLength_ , protocolErrorBehavior_ ) ) ;
54
54
}
55
55
56
- private static ValueTask < Packet > CreatePacketFromPayload ( ArraySegment < byte > payloadBytes , int payloadLength , int packetSequenceNumber , ProtocolErrorBehavior protocolErrorBehavior ) =>
57
- payloadBytes . Count >= payloadLength ? new ValueTask < Packet > ( new Packet ( packetSequenceNumber , payloadBytes ) ) :
56
+ private static ValueTask < Packet > CreatePacketFromPayload ( ArraySegment < byte > payloadBytes , int payloadLength , ProtocolErrorBehavior protocolErrorBehavior ) =>
57
+ payloadBytes . Count >= payloadLength ? new ValueTask < Packet > ( new Packet ( payloadBytes ) ) :
58
58
protocolErrorBehavior == ProtocolErrorBehavior . Throw ? ValueTaskExtensions . FromException < Packet > ( new EndOfStreamException ( ) ) :
59
59
default ( ValueTask < Packet > ) ;
60
60
@@ -69,8 +69,7 @@ private static ValueTask<ArraySegment<byte>> DoReadPayloadAsync(BufferedByteRead
69
69
var readPacketTask = ReadPacketAsync ( bufferedByteReader , byteHandler , getNextSequenceNumber , protocolErrorBehavior , ioBehavior ) ;
70
70
while ( readPacketTask . IsCompleted )
71
71
{
72
- ValueTask < ArraySegment < byte > > result ;
73
- if ( HasReadPayload ( previousPayloads , readPacketTask . Result , protocolErrorBehavior , out result ) )
72
+ if ( HasReadPayload ( previousPayloads , readPacketTask . Result , protocolErrorBehavior , out var result ) )
74
73
return result ;
75
74
76
75
readPacketTask = ReadPacketAsync ( bufferedByteReader , byteHandler , getNextSequenceNumber , protocolErrorBehavior , ioBehavior ) ;
@@ -89,12 +88,6 @@ ValueTask<ArraySegment<byte>> AddContinuation(ValueTask<Packet> readPacketTask_,
89
88
90
89
private static bool HasReadPayload ( ArraySegmentHolder < byte > previousPayloads , Packet packet , ProtocolErrorBehavior protocolErrorBehavior , out ValueTask < ArraySegment < byte > > result )
91
90
{
92
- if ( packet == null && protocolErrorBehavior == ProtocolErrorBehavior . Ignore )
93
- {
94
- result = default ( ValueTask < ArraySegment < byte > > ) ;
95
- return true ;
96
- }
97
-
98
91
if ( previousPayloads . Count == 0 && packet . Contents . Count < MaxPacketSize )
99
92
{
100
93
result = new ValueTask < ArraySegment < byte > > ( packet . Contents ) ;
0 commit comments