diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-09-06 09:38:33 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-09-16 09:10:18 +0200 |
commit | c9ee7160f4fe4c8d7020b251cf08b5d00d18b783 (patch) | |
tree | 7831f69fa1ff6ad6f17ead244968dfd7299c49b1 /src/login/logind-core.c | |
parent | f68d14855b47842800cb8e530200243fe1171345 (diff) | |
download | systemd-c9ee7160f4fe4c8d7020b251cf08b5d00d18b783.tar.gz |
logind: shorten code a bit
Diffstat (limited to 'src/login/logind-core.c')
-rw-r--r-- | src/login/logind-core.c | 33 |
1 files changed, 7 insertions, 26 deletions
diff --git a/src/login/logind-core.c b/src/login/logind-core.c index 9e4441f829..b981544e12 100644 --- a/src/login/logind-core.c +++ b/src/login/logind-core.c @@ -354,28 +354,19 @@ int manager_get_session_by_pid(Manager *m, pid_t pid, Session **ret) { s = hashmap_get(m->sessions_by_leader, PID_TO_PTR(pid)); if (!s) { r = cg_pid_get_unit(pid, &unit); - if (r < 0) - goto not_found; - - s = hashmap_get(m->session_units, unit); - if (!s) - goto not_found; + if (r >= 0) + s = hashmap_get(m->session_units, unit); } if (ret) *ret = s; - return 1; - -not_found: - if (ret) - *ret = NULL; - return 0; + return !!s; } int manager_get_user_by_pid(Manager *m, pid_t pid, User **ret) { _cleanup_free_ char *unit = NULL; - User *u; + User *u = NULL; int r; assert(m); @@ -384,23 +375,13 @@ int manager_get_user_by_pid(Manager *m, pid_t pid, User **ret) { return -EINVAL; r = cg_pid_get_slice(pid, &unit); - if (r < 0) - goto not_found; - - u = hashmap_get(m->user_units, unit); - if (!u) - goto not_found; + if (r >= 0) + u = hashmap_get(m->user_units, unit); if (ret) *ret = u; - return 1; - -not_found: - if (ret) - *ret = NULL; - - return 0; + return !!u; } int manager_get_idle_hint(Manager *m, dual_timestamp *t) { |