diff options
author | Radoslaw Pajak <r.pajak@samsung.com> | 2013-12-17 10:11:43 +0100 |
---|---|---|
committer | Lubomir Rintel <lkundrak@v3.sk> | 2015-02-11 11:55:30 +0100 |
commit | 8141c31e4f8b370981961a3c7ca5ab78901dee16 (patch) | |
tree | a1c5840b7b5967ed534a33b17b76eff006d5fdc9 | |
parent | 79da6c2604cac847e92c2d758a963c3bef03087a (diff) |
[daemon-fix] fixed transaction freeing for daemon name and starters
Change-Id: I795ea4d76b80a10fdd2f1aa2a912857472a924ee
Signed-off-by: Radoslaw Pajak <r.pajak@samsung.com>
-rw-r--r-- | bus/kdbus-d.c | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/bus/kdbus-d.c b/bus/kdbus-d.c index 86d712b8..bed707a2 100644 --- a/bus/kdbus-d.c +++ b/bus/kdbus-d.c @@ -543,8 +543,12 @@ dbus_bool_t register_daemon_name(DBusConnection* connection) retval = TRUE; out: - bus_transaction_cancel_and_free(transaction); - return retval; + if(retval) + bus_transaction_execute_and_free(transaction); + else + bus_transaction_cancel_and_free(transaction); + + return retval; } dbus_uint32_t kdbus_request_name(DBusConnection* connection, const DBusString *service_name, dbus_uint32_t flags, __u64 sender_id) @@ -1041,8 +1045,12 @@ out: } dbus_free_string_array (services); _dbus_string_free(&name); + if(retval) + bus_transaction_execute_and_free(transaction); + else bus_transaction_cancel_and_free(transaction); - return retval; + + return retval; } /* @@ -1098,8 +1106,12 @@ dbus_bool_t update_kdbus_starters(DBusConnection* connection) retval = TRUE; out: - bus_transaction_cancel_and_free(transaction); - return retval; + if(retval) + bus_transaction_execute_and_free(transaction); + else + bus_transaction_cancel_and_free(transaction); + + return retval; } /* |