summaryrefslogtreecommitdiff
path: root/src/basic
diff options
context:
space:
mode:
Diffstat (limited to 'src/basic')
-rw-r--r--src/basic/cgroup-util.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c
index 7dd8e4e0fc..9ba9f375b0 100644
--- a/src/basic/cgroup-util.c
+++ b/src/basic/cgroup-util.c
@@ -2001,7 +2001,7 @@ int cg_mask_supported(CGroupMask *ret) {
}
int cg_kernel_controllers(Set **ret) {
- _cleanup_set_free_free_ Set *controllers = NULL;
+ _cleanup_set_free_ Set *controllers = NULL;
_cleanup_fclose_ FILE *f = NULL;
int r;
@@ -2011,10 +2011,6 @@ int cg_kernel_controllers(Set **ret) {
* and controllers that aren't currently accessible (because not mounted). This does not include "name="
* pseudo-controllers. */
- controllers = set_new(&string_hash_ops);
- if (!controllers)
- return -ENOMEM;
-
r = fopen_unlocked("/proc/cgroups", "re", &f);
if (r == -ENOENT) {
*ret = NULL;
@@ -2048,7 +2044,7 @@ int cg_kernel_controllers(Set **ret) {
if (!cg_controller_is_valid(controller))
return -EBADMSG;
- r = set_consume(controllers, TAKE_PTR(controller));
+ r = set_ensure_consume(&controllers, &string_hash_ops_free, TAKE_PTR(controller));
if (r < 0)
return r;
}