diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/journal/coredumpctl.c | 3 | ||||
-rw-r--r-- | src/journal/journald-native.c | 9 | ||||
-rw-r--r-- | src/login/logind-acl.c | 2 | ||||
-rw-r--r-- | src/login/logind-session.h | 2 |
4 files changed, 7 insertions, 9 deletions
diff --git a/src/journal/coredumpctl.c b/src/journal/coredumpctl.c index d1450c09a2..e5f4d4571a 100644 --- a/src/journal/coredumpctl.c +++ b/src/journal/coredumpctl.c @@ -131,11 +131,10 @@ static int add_match(Set *set, const char *match) { goto fail; log_debug("Adding pattern: %s", pattern); - r = set_put(set, pattern); + r = set_consume(set, pattern); if (r < 0) { log_error("Failed to add pattern '%s': %s", pattern, strerror(-r)); - free(pattern); goto fail; } diff --git a/src/journal/journald-native.c b/src/journal/journald-native.c index 0f3936a146..d73280c8cf 100644 --- a/src/journal/journald-native.c +++ b/src/journal/journald-native.c @@ -383,12 +383,15 @@ void server_process_native_file( } int server_open_native_socket(Server*s) { - union sockaddr_union sa; int one, r; assert(s); if (s->native_fd < 0) { + union sockaddr_union sa = { + .un.sun_family = AF_UNIX, + .un.sun_path = "/run/systemd/journal/socket", + }; s->native_fd = socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0); if (s->native_fd < 0) { @@ -396,10 +399,6 @@ int server_open_native_socket(Server*s) { return -errno; } - zero(sa); - sa.un.sun_family = AF_UNIX; - strncpy(sa.un.sun_path, "/run/systemd/journal/socket", sizeof(sa.un.sun_path)); - unlink(sa.un.sun_path); r = bind(s->native_fd, &sa.sa, offsetof(union sockaddr_union, un.sun_path) + strlen(sa.un.sun_path)); diff --git a/src/login/logind-acl.c b/src/login/logind-acl.c index af7c352ce5..b76e16d906 100644 --- a/src/login/logind-acl.c +++ b/src/login/logind-acl.c @@ -284,7 +284,7 @@ int devnode_acl_all(struct udev *udev, k = devnode_acl(n, flush, del, old_uid, add, new_uid); if (k == -ENOENT) log_debug("Device %s disappeared while setting ACLs", n); - else if (k < 0) + else if (k < 0 && r == 0) r = k; } diff --git a/src/login/logind-session.h b/src/login/logind-session.h index 81957dfa78..e62b76d66f 100644 --- a/src/login/logind-session.h +++ b/src/login/logind-session.h @@ -72,7 +72,7 @@ enum KillWho { struct Session { Manager *manager; - char *id; + const char *id; unsigned int pos; SessionType type; SessionClass class; |