summaryrefslogtreecommitdiff
path: root/src/login
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2020-06-24 17:42:13 +0200
committerGitHub <noreply@github.com>2020-06-24 17:42:13 +0200
commitf83803a6499cd7ad314ba35be2f5f69ae12ab0e9 (patch)
treeba34799ac9e404113b92cf36023e607be53db3a2 /src/login
parent41d1f469cf10f5f3e9cb4f4853ace9b0cfe5beae (diff)
parente198eba7c231b7ab9883e81d841631d7a235be84 (diff)
downloadsystemd-f83803a6499cd7ad314ba35be2f5f69ae12ab0e9.tar.gz
Merge pull request #16238 from keszybz/set-handling-more
Fix handling of cases where a duplicate item is added to a set and related cleanups
Diffstat (limited to 'src/login')
-rw-r--r--src/login/logind-brightness.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/login/logind-brightness.c b/src/login/logind-brightness.c
index 3f4b65e1fd..450ec32044 100644
--- a/src/login/logind-brightness.c
+++ b/src/login/logind-brightness.c
@@ -174,15 +174,11 @@ static int set_add_message(Set **set, sd_bus_message *message) {
if (r <= 0)
return r;
- r = set_ensure_allocated(set, &bus_message_hash_ops);
- if (r < 0)
- return r;
-
- r = set_put(*set, message);
- if (r < 0)
+ r = set_ensure_put(set, &bus_message_hash_ops, message);
+ if (r <= 0)
return r;
-
sd_bus_message_ref(message);
+
return 1;
}