bool add, uid_t new_uid) {
_cleanup_(sd_device_enumerator_unrefp) sd_device_enumerator *e = NULL;
- _cleanup_set_free_free_ Set *nodes = NULL;
+ _cleanup_set_free_ Set *nodes = NULL;
_cleanup_closedir_ DIR *dir = NULL;
sd_device *d;
char *n;
int r;
- nodes = set_new(&path_hash_ops);
- if (!nodes)
- return -ENOMEM;
-
r = sd_device_enumerator_new(&e);
if (r < 0)
return r;
continue;
log_device_debug(d, "Found udev node %s for seat %s", node, seat);
- r = set_put_strdup(&nodes, node);
+ r = set_put_strdup_full(&nodes, &path_hash_ops_free, node);
if (r < 0)
return r;
}
}
log_debug("Found static node %s for seat %s", n, seat);
- r = set_consume(nodes, n);
+ r = set_ensure_consume(&nodes, &path_hash_ops_free, n);
if (r < 0)
return r;
}