X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flogind-user-dbus.c;h=7263d1b757265ecc2504224a94524625b0a71a3f;hp=5926dcfbc7ab04e85e5968a67788be97182be009;hb=82e487c56d0947796793b6fd2836264328defe9f;hpb=77527da0a02029ce9c5ec86d5db5ea42147a658f diff --git a/src/logind-user-dbus.c b/src/logind-user-dbus.c index 5926dcfbc..7263d1b75 100644 --- a/src/logind-user-dbus.c +++ b/src/logind-user-dbus.c @@ -121,7 +121,7 @@ static int bus_user_append_sessions(DBusMessageIter *i, const char *property, vo assert(property); assert(u); - if (!dbus_message_iter_open_container(i, DBUS_TYPE_ARRAY, "so", &sub)) + if (!dbus_message_iter_open_container(i, DBUS_TYPE_ARRAY, "(so)", &sub)) return -ENOMEM; LIST_FOREACH(sessions_by_user, session, u->sessions) { @@ -362,6 +362,9 @@ int user_send_changed(User *u, const char *properties) { assert(u); + if (!u->started) + return 0; + p = user_bus_path(u); if (!p) return -ENOMEM;