summaryrefslogtreecommitdiff
path: root/src/login/logind-core.c
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2019-09-06 09:38:33 +0200
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2019-09-16 09:10:18 +0200
commitc9ee7160f4fe4c8d7020b251cf08b5d00d18b783 (patch)
tree7831f69fa1ff6ad6f17ead244968dfd7299c49b1 /src/login/logind-core.c
parentf68d14855b47842800cb8e530200243fe1171345 (diff)
downloadsystemd-c9ee7160f4fe4c8d7020b251cf08b5d00d18b783.tar.gz
logind: shorten code a bit
Diffstat (limited to 'src/login/logind-core.c')
-rw-r--r--src/login/logind-core.c33
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) {