From 2ec59b436244ccc74750abfc6a61c2e5c24ec752 Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Thu, 23 Jun 2022 11:13:31 -0400 Subject: [PATCH] src.ctf.lttng-live: make live_viewer_connection::{relay_hostname,target_hostname,session_name,proto} GStringUPs These values come from GStrings from the common code, not yet C++-ified, so it's simpler for now to use GStringUP to automatically manage the GString lifetimes locally. If the common code ever becomes C++, it can all be replaced with std::string. Change-Id: I913ab51488fc934cd049e530a2b7583cc1cefff6 Signed-off-by: Simon Marchi Reviewed-on: https://review.lttng.org/c/babeltrace/+/8470 Reviewed-by: Philippe Proulx --- .../ctf/lttng-live/viewer-connection.cpp | 24 ++++--------------- .../ctf/lttng-live/viewer-connection.hpp | 9 +++---- 2 files changed, 9 insertions(+), 24 deletions(-) diff --git a/src/plugins/ctf/lttng-live/viewer-connection.cpp b/src/plugins/ctf/lttng-live/viewer-connection.cpp index 0777064db..f1d0e2f5e 100644 --- a/src/plugins/ctf/lttng-live/viewer-connection.cpp +++ b/src/plugins/ctf/lttng-live/viewer-connection.cpp @@ -337,10 +337,10 @@ static int parse_url(struct live_viewer_connection *viewer_connection) BT_CLOGE_APPEND_CAUSE("Invalid LTTng live URL format: %s", error_buf); goto end; } - viewer_connection->proto = lttng_live_url_parts.proto; + viewer_connection->proto.reset(lttng_live_url_parts.proto); lttng_live_url_parts.proto = NULL; - viewer_connection->relay_hostname = lttng_live_url_parts.hostname; + viewer_connection->relay_hostname.reset(lttng_live_url_parts.hostname); lttng_live_url_parts.hostname = NULL; if (lttng_live_url_parts.port >= 0) { @@ -349,11 +349,11 @@ static int parse_url(struct live_viewer_connection *viewer_connection) viewer_connection->port = LTTNG_DEFAULT_NETWORK_VIEWER_PORT; } - viewer_connection->target_hostname = lttng_live_url_parts.target_hostname; + viewer_connection->target_hostname.reset(lttng_live_url_parts.target_hostname); lttng_live_url_parts.target_hostname = NULL; if (lttng_live_url_parts.session_name) { - viewer_connection->session_name = lttng_live_url_parts.session_name; + viewer_connection->session_name.reset(lttng_live_url_parts.session_name); lttng_live_url_parts.session_name = NULL; } @@ -1727,22 +1727,6 @@ void live_viewer_connection_destroy(struct live_viewer_connection *viewer_connec lttng_live_disconnect_viewer(viewer_connection); - if (viewer_connection->relay_hostname) { - g_string_free(viewer_connection->relay_hostname, true); - } - - if (viewer_connection->target_hostname) { - g_string_free(viewer_connection->target_hostname, true); - } - - if (viewer_connection->session_name) { - g_string_free(viewer_connection->session_name, true); - } - - if (viewer_connection->proto) { - g_string_free(viewer_connection->proto, true); - } - delete viewer_connection; bt_socket_fini(); diff --git a/src/plugins/ctf/lttng-live/viewer-connection.hpp b/src/plugins/ctf/lttng-live/viewer-connection.hpp index 2fa06ea3f..1b108deaf 100644 --- a/src/plugins/ctf/lttng-live/viewer-connection.hpp +++ b/src/plugins/ctf/lttng-live/viewer-connection.hpp @@ -18,6 +18,7 @@ #include "common/macros.h" #include "compat/socket.h" +#include "cpp-common/glib-up.hpp" #include "cpp-common/log-cfg.hpp" #define LTTNG_DEFAULT_NETWORK_VIEWER_PORT 5344 @@ -63,10 +64,10 @@ struct live_viewer_connection std::string url; - GString *relay_hostname = nullptr; - GString *target_hostname = nullptr; - GString *session_name = nullptr; - GString *proto = nullptr; + bt2_common::GStringUP relay_hostname; + bt2_common::GStringUP target_hostname; + bt2_common::GStringUP session_name; + bt2_common::GStringUP proto; BT_SOCKET control_sock {}; int port = 0; -- 2.34.1