Skip to content

Commit 4a7bc29

Browse files
authored
Users don't need to hold the payload until publish complete (#252)
- underlying lib updated to keep deep copy of the publish payload, thus we don't need to keep the payload alive until publish complete
1 parent 6abdaa0 commit 4a7bc29

File tree

3 files changed

+5
-11
lines changed

3 files changed

+5
-11
lines changed

samples/mqtt/basic_pub_sub/main.cpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -540,12 +540,9 @@ int main(int argc, char *argv[])
540540
break;
541541
}
542542

543-
ByteBuf payload = ByteBufNewCopy(DefaultAllocator(), (const uint8_t *)input.data(), input.length());
544-
ByteBuf *payloadPtr = &payload;
545-
546-
auto onPublishComplete = [payloadPtr](Mqtt::MqttConnection &, uint16_t packetId, int errorCode) {
547-
aws_byte_buf_clean_up(payloadPtr);
543+
ByteBuf payload = ByteBufFromArray((const uint8_t *)input.data(), input.length());
548544

545+
auto onPublishComplete = [](Mqtt::MqttConnection &, uint16_t packetId, int errorCode) {
549546
if (packetId)
550547
{
551548
fprintf(stdout, "Operation on packetId %d Succeeded\n", packetId);

samples/mqtt/raw_pub_sub/main.cpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -413,12 +413,9 @@ int main(int argc, char *argv[])
413413
break;
414414
}
415415

416-
ByteBuf payload = ByteBufNewCopy(DefaultAllocator(), (const uint8_t *)input.data(), input.length());
417-
ByteBuf *payloadPtr = &payload;
418-
419-
auto onPublishComplete = [payloadPtr](Mqtt::MqttConnection &, uint16_t packetId, int errorCode) {
420-
aws_byte_buf_clean_up(payloadPtr);
416+
ByteBuf payload = ByteBufFromArray((const uint8_t *)input.data(), input.length());
421417

418+
auto onPublishComplete = [](Mqtt::MqttConnection &, uint16_t packetId, int errorCode) {
422419
if (packetId)
423420
{
424421
fprintf(stdout, "Operation on packetId %d Succeeded\n", packetId);

0 commit comments

Comments
 (0)