X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fcore%2Fdbus-manager.c;h=3cf3e90a3659d9fc2b49dc440889c9b3c8fbd6ae;hp=ed9784b58f200adb433bf49dfe19ad6b6d809d5d;hb=645a9e5a2bbb06464a3fba1a3501e9d79e5bbad8;hpb=b3c2cf3d8ed6e228adb18f0701c157a01a076aeb diff --git a/src/core/dbus-manager.c b/src/core/dbus-manager.c index ed9784b58..3cf3e90a3 100644 --- a/src/core/dbus-manager.c +++ b/src/core/dbus-manager.c @@ -352,17 +352,21 @@ static int bus_manager_set_log_target(DBusMessageIter *i, const char *property, } static int bus_manager_append_log_level(DBusMessageIter *i, const char *property, void *data) { - const char *t; + char *t; + int r; assert(i); assert(property); - t = log_level_to_string(log_get_max_level()); + r = log_level_to_string_alloc(log_get_max_level(), &t); + if (r < 0) + return r; if (!dbus_message_iter_append_basic(i, DBUS_TYPE_STRING, &t)) - return -ENOMEM; + r = -ENOMEM; - return 0; + free(t); + return r; } static int bus_manager_set_log_level(DBusMessageIter *i, const char *property, void *data) { @@ -1432,7 +1436,6 @@ static DBusHandlerResult bus_manager_message_handler(DBusConnection *connection, r = unit_file_get_list(m->running_as == SYSTEMD_SYSTEM ? UNIT_FILE_SYSTEM : UNIT_FILE_USER, NULL, h); if (r < 0) { unit_file_list_free(h); - dbus_message_unref(reply); return bus_send_error_reply(connection, message, NULL, r); }