chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
sd-login: fix return value of sd_pid_get_session
[elogind.git]
/
src
/
libelogind
/
sd-login
/
sd-login.c
diff --git
a/src/libelogind/sd-login/sd-login.c
b/src/libelogind/sd-login/sd-login.c
index c431384b45ad845e09b6c3db9965f78b2981d289..3adbb34ad5d63bba09e1f194b5864d4612681df0 100644
(file)
--- a/
src/libelogind/sd-login/sd-login.c
+++ b/
src/libelogind/sd-login/sd-login.c
@@
-56,11
+56,13
@@
*/
_public_ int sd_pid_get_session(pid_t pid, char **session) {
*/
_public_ int sd_pid_get_session(pid_t pid, char **session) {
+ int r;
assert_return(pid >= 0, -EINVAL);
assert_return(session, -EINVAL);
assert_return(pid >= 0, -EINVAL);
assert_return(session, -EINVAL);
- return cg_pid_get_session(pid, session);
+ r = cg_pid_get_session(pid, session);
+ return r == -ENXIO ? -ENODATA : r;
}
_public_ int sd_pid_get_unit(pid_t pid, char **unit) {
}
_public_ int sd_pid_get_unit(pid_t pid, char **unit) {
@@
-739,7
+741,7
@@
_public_ int sd_seat_get_sessions(const char *seat, char ***sessions, uid_t **ui
r = parse_env_file(p, NEWLINE,
"SESSIONS", &s,
r = parse_env_file(p, NEWLINE,
"SESSIONS", &s,
- "
ACTIVE_SESSION
S", &t,
+ "
UID
S", &t,
NULL);
if (r == -ENOENT)
return -ENXIO;
NULL);
if (r == -ENOENT)
return -ENXIO;