From b4a106e7bcac52f330de120d3318954f7193b46c Mon Sep 17 00:00:00 2001 From: Rune Harlyk Date: Mon, 17 Jun 2024 23:31:45 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=9B=B8=20Use=20char*=20in=20favour=20of?= =?UTF-8?q?=20String?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- esp32/lib/ESP32-sveltekit/EventSocket.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/esp32/lib/ESP32-sveltekit/EventSocket.cpp b/esp32/lib/ESP32-sveltekit/EventSocket.cpp index bd4dfe8..66b8c8e 100644 --- a/esp32/lib/ESP32-sveltekit/EventSocket.cpp +++ b/esp32/lib/ESP32-sveltekit/EventSocket.cpp @@ -82,7 +82,8 @@ void EventSocket::emit(const char *event, const char *payload, const char *origi xSemaphoreGive(clientSubscriptionsMutex); return; } - String msg = "[\"" + String(event) + "\"," + String(payload) + "]"; + char msg[strlen(event) + strlen(payload) + 10]; + snprintf(msg, sizeof(msg), "[\"%s\",%s]", event, payload); // if onlyToSameOrigin == true, send the message back to the origin if (onlyToSameOrigin && originSubscriptionId > 0) @@ -90,9 +91,8 @@ void EventSocket::emit(const char *event, const char *payload, const char *origi auto *client = _socket.getClient(originSubscriptionId); if (client) { - ESP_LOGV("EventSocket", "Emitting event: %s to %s, Message: %s", event, client->remoteIP().toString().c_str(), - msg.c_str()); - client->sendMessage(msg.c_str()); + ESP_LOGV("EventSocket", "Emitting event: %s to %s, Message: %s", event, client->remoteIP().toString().c_str(), msg); + client->sendMessage(msg); } } else @@ -108,9 +108,8 @@ void EventSocket::emit(const char *event, const char *payload, const char *origi subscriptions.remove(subscription); continue; } - ESP_LOGV("EventSocket", "Emitting event: %s to %s, Message: %s", event, client->remoteIP().toString().c_str(), - msg.c_str()); - client->sendMessage(msg.c_str()); + ESP_LOGV("EventSocket", "Emitting event: %s to %s, Message: %s", event, client->remoteIP().toString().c_str(), msg); + client->sendMessage(msg); } } xSemaphoreGive(clientSubscriptionsMutex);