From 674cdd1933ef5301385d2119a4d1c5e9c862f0a2 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 12 Aug 2010 01:01:55 +0200 Subject: [PATCH] dbus: fix capability serialization --- src/dbus-execute.c | 6 ++++-- src/dbus-execute.h | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/dbus-execute.c b/src/dbus-execute.c index 55c61e593..1222d1bfd 100644 --- a/src/dbus-execute.c +++ b/src/dbus-execute.c @@ -209,11 +209,13 @@ int bus_execute_append_capabilities(Manager *m, DBusMessageIter *i, const char * else s = ""; - if (!t) + if (!s) return -ENOMEM; b = dbus_message_iter_append_basic(i, DBUS_TYPE_STRING, &s); - cap_free(t); + + if (t) + cap_free(t); if (!b) return -ENOMEM; diff --git a/src/dbus-execute.h b/src/dbus-execute.h index a00acbe2f..cc4b803ca 100644 --- a/src/dbus-execute.h +++ b/src/dbus-execute.h @@ -127,7 +127,7 @@ { interface, "SyslogPriority", bus_property_append_int, "i", &(context).syslog_priority }, \ { interface, "SyslogIdentifier", bus_property_append_string, "s", (context).syslog_identifier }, \ { interface, "SyslogLevelPrefix", bus_property_append_bool, "b", &(context).syslog_level_prefix }, \ - { interface, "Capabilities", bus_execute_append_capabilities, "s", (context).capabilities }, \ + { interface, "Capabilities", bus_execute_append_capabilities, "s",&(context) }, \ { interface, "SecureBits", bus_property_append_int, "i", &(context).secure_bits }, \ { interface, "CapabilityBoundingSetDrop", bus_property_append_uint64, "t", &(context).capability_bounding_set_drop }, \ { interface, "User", bus_property_append_string, "s", (context).user }, \ -- 2.30.2