Check amount of received data

Fix a bug
This commit is contained in:
2020-12-14 22:00:38 +01:00
parent 7455000aae
commit 19b6225b25

View File

@@ -110,7 +110,13 @@ namespace WaveshareUARTFingerprintSensor
_serialPort.Write(buffer, 0, buffer.Length);
// Response
_serialPort.Read(buffer, 0, buffer.Length);
int length = buffer.Length;
int offset = 0;
do
{
int toRead = length - offset;
offset += _serialPort.Read(buffer, offset, toRead);
} while (offset < length);
if (buffer[0] != PacketSeparator || buffer[7] != PacketSeparator || buffer[1] != (byte)commandType)
{