From ccfc72267f5c4bddad6779bb30c93a504f286500 Mon Sep 17 00:00:00 2001 From: Julian Brost Date: Fri, 11 Apr 2025 12:27:25 +0200 Subject: [PATCH] Prefer icinga::String::GetData() over icinga::String::CStr() Creating the string_view from the std::string (as returned by GetData()) uses the stored length instead of having to detect it by finding '\0'. --- lib/base/tcpsocket.hpp | 4 ++-- lib/remote/apilistener.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/base/tcpsocket.hpp b/lib/base/tcpsocket.hpp index 1cf1a2350..7e64d57a5 100644 --- a/lib/base/tcpsocket.hpp +++ b/lib/base/tcpsocket.hpp @@ -41,7 +41,7 @@ void Connect(Socket& socket, const String& node, const String& service) using boost::asio::ip::tcp; tcp::resolver resolver (IoEngine::Get().GetIoContext()); - auto result (resolver.resolve(node.CStr(), service.CStr())); + auto result (resolver.resolve(node.GetData(), service.GetData())); auto current (result.begin()); for (;;) { @@ -71,7 +71,7 @@ void Connect(Socket& socket, const String& node, const String& service, boost::a using boost::asio::ip::tcp; tcp::resolver resolver (IoEngine::Get().GetIoContext()); - auto result (resolver.async_resolve(node.CStr(), service.CStr(), yc)); + auto result (resolver.async_resolve(node.GetData(), service.GetData(), yc)); auto current (result.begin()); for (;;) { diff --git a/lib/remote/apilistener.cpp b/lib/remote/apilistener.cpp index 6c684e9f1..6bcf5bb5f 100644 --- a/lib/remote/apilistener.cpp +++ b/lib/remote/apilistener.cpp @@ -439,7 +439,7 @@ bool ApiListener::AddListener(const String& node, const String& service) try { tcp::resolver resolver (io); - auto result (resolver.resolve(node.CStr(), service.CStr(), tcp::resolver::passive)); + auto result (resolver.resolve(node.GetData(), service.GetData(), tcp::resolver::passive)); auto current (result.begin()); for (;;) {