From b950e71a6dc191f1905f4624f24dc904faebce0a Mon Sep 17 00:00:00 2001 From: Arvin Schnell Date: Mon, 4 Aug 2025 17:01:56 +0200 Subject: [PATCH] - fixed memory leak in DBus Marshalling --- dbus/DBusMessage.cc | 16 +++++++++++++++- dbus/DBusMessage.h | 4 ++-- package/snapper.changes | 5 +++++ 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/dbus/DBusMessage.cc b/dbus/DBusMessage.cc index 9670d2d0..ac5cb497 100644 --- a/dbus/DBusMessage.cc +++ b/dbus/DBusMessage.cc @@ -1,6 +1,6 @@ /* * Copyright (c) 2012 Novell, Inc. - * Copyright (c) [2016-2023] SUSE LLC + * Copyright (c) [2016-2025] SUSE LLC * * All Rights Reserved. * @@ -71,6 +71,19 @@ namespace DBus const char* TypeInfo::signature = "s"; + string + Marshalling::get_signature() + { + char* tmp = dbus_message_iter_get_signature(top()); + if (!tmp) + SN_THROW(FatalException()); + + string sig = tmp; + dbus_free(tmp); + return sig; + } + + Unmarshaller::Unmarshaller(Message& msg) { iters.push_back(new DBusMessageIter()); @@ -119,6 +132,7 @@ namespace DBus assert(iters.empty()); } + void Marshaller::open_struct() { diff --git a/dbus/DBusMessage.h b/dbus/DBusMessage.h index ba92fc0b..20205f6a 100644 --- a/dbus/DBusMessage.h +++ b/dbus/DBusMessage.h @@ -1,6 +1,6 @@ /* * Copyright (c) 2012 Novell, Inc. - * Copyright (c) [2016-2023] SUSE LLC + * Copyright (c) [2016-2025] SUSE LLC * * All Rights Reserved. * @@ -185,7 +185,7 @@ namespace DBus DBusMessageIter* top() { return iters.back(); } int get_type() { return dbus_message_iter_get_arg_type(top()); } - string get_signature() { return dbus_message_iter_get_signature(top()); } + string get_signature(); protected: diff --git a/package/snapper.changes b/package/snapper.changes index a9653565..3fd6a250 100644 --- a/package/snapper.changes +++ b/package/snapper.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Mon Aug 04 17:00:45 CEST 2025 - Arvin Schnell + +- fixed memory leak in DBus Marshalling + ------------------------------------------------------------------- Wed Jul 23 10:35:22 CEST 2025 - aschnell@suse.com -- 2.47.3