From ea7a493c13805c7811dde0c055c4979ff3f2ed60 Mon Sep 17 00:00:00 2001 From: enzious Date: Sat, 18 Oct 2025 05:07:48 -0500 Subject: [PATCH] fix: dangling pointer from scoped var --- src/lib/platform/PortalRemoteDesktop.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib/platform/PortalRemoteDesktop.cpp b/src/lib/platform/PortalRemoteDesktop.cpp index 8f12699c9..ab46dfb66 100644 --- a/src/lib/platform/PortalRemoteDesktop.cpp +++ b/src/lib/platform/PortalRemoteDesktop.cpp @@ -11,6 +11,8 @@ #include "base/TMethodJob.h" #include "common/Settings.h" +#include + namespace deskflow { PortalRemoteDesktop::PortalRemoteDesktop(EiScreen *screen, IEventQueue *events) @@ -150,7 +152,8 @@ void PortalRemoteDesktop::handleInitSession(GObject *object, GAsyncResult *res) gboolean PortalRemoteDesktop::initSession() { if (auto sessionToken = Settings::value(Settings::Client::XdpRestoreToken).toByteArray(); !sessionToken.isEmpty()) { - m_sessionRestoreToken = sessionToken.data(); + free(m_sessionRestoreToken); + m_sessionRestoreToken = strdup(sessionToken.data()); } LOG_DEBUG("setting up remote desktop session with restore token %s", m_sessionRestoreToken);