From f4f66bb397577969babd454cd7e163525c1d1ddc Mon Sep 17 00:00:00 2001 From: Kieran Kihn <114803508+kierankihn@users.noreply.github.com> Date: Sat, 29 Nov 2025 18:50:17 +0800 Subject: [PATCH] fix(network): send message length before body --- src/network/NetworkServer.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/network/NetworkServer.cpp b/src/network/NetworkServer.cpp index dbc72d5..8eb6dfd 100644 --- a/src/network/NetworkServer.cpp +++ b/src/network/NetworkServer.cpp @@ -19,10 +19,10 @@ namespace UNO::NETWORK { void Session::send(const std::string &message) { - auto buffer = std::make_shared(message); - asio::async_write(socket_, asio::buffer(*buffer), [this, self = shared_from_this(), buffer](const asio::error_code &ec, size_t) { - if (ec) {} - }); + auto length = std::make_shared(message.size()); + auto msg = std::make_shared(message); + std::array buffers = {asio::buffer(length.get(), sizeof(size_t)), asio::buffer(*msg)}; + asio::async_write(socket_, buffers, [this, self = shared_from_this(), length, msg](const asio::error_code &ec, size_t) {}); } void Session::read()