From d98129481a0bb39572cb5f0a583655f828bb621c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=BCnther=20Foidl?= Date: Tue, 4 Jan 2022 19:25:26 +0100 Subject: [PATCH] Fixed latent bug in MqttApplicationMessageBuilder.WithPayload stream overload (#1322) --- Source/MQTTnet/MqttApplicationMessageBuilder.cs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Source/MQTTnet/MqttApplicationMessageBuilder.cs b/Source/MQTTnet/MqttApplicationMessageBuilder.cs index 18be1a23..cc63a29e 100644 --- a/Source/MQTTnet/MqttApplicationMessageBuilder.cs +++ b/Source/MQTTnet/MqttApplicationMessageBuilder.cs @@ -159,7 +159,18 @@ namespace MQTTnet else { _payload = new byte[length]; - payload.Read(_payload, 0, _payload.Length); + + var totalRead = 0; + do + { + var bytesRead = payload.Read(_payload, totalRead, _payload.Length - totalRead); + if (bytesRead == 0) + { + break; + } + totalRead += bytesRead; + } + while (totalRead < length); } return this;