]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sysusers: use trivial_hash_ops_free for storing user/group name
authorYu Watanabe <watanabe.yu+github@gmail.com>
Fri, 11 Apr 2025 02:37:14 +0000 (11:37 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 13 Apr 2025 01:00:57 +0000 (10:00 +0900)
src/sysusers/sysusers.c

index 24b20cbd67a553f48e9e87120ca1d78d9e728bbc..bb14c6c43b13bb2d1289fe07e93f088027ae3a78 100644 (file)
@@ -143,7 +143,7 @@ static void context_done(Context *c) {
         hashmap_free(c->database_by_gid);
         hashmap_free(c->database_by_groupname);
 
-        set_free_free(c->names);
+        set_free(c->names);
         uid_range_free(c->uid_range);
 }
 
@@ -231,9 +231,8 @@ static int load_user_database(Context *c) {
                 if (!n)
                         return -ENOMEM;
 
-                /* Note that we use NULL hash_ops (i.e. trivial_hash_ops) here, so identical strings can
-                 * exist in the set. */
-                r = set_ensure_consume(&c->names, /* hash_ops= */ NULL, n);
+                /* Note that we use trivial_hash_ops_free here, so identical strings can exist in the set. */
+                r = set_ensure_consume(&c->names, &trivial_hash_ops_free, n);
                 if (r < 0)
                         return r;
                 assert(r > 0);  /* The set uses pointer comparisons, so n must not be in the set. */
@@ -274,9 +273,8 @@ static int load_group_database(Context *c) {
                 if (!n)
                         return -ENOMEM;
 
-                /* Note that we use NULL hash_ops (i.e. trivial_hash_ops) here, so identical strings can
-                 * exist in the set. */
-                r = set_ensure_consume(&c->names, /* hash_ops= */ NULL, n);
+                /* Note that we use trivial_hash_ops_free here, so identical strings can exist in the set. */
+                r = set_ensure_consume(&c->names, &trivial_hash_ops_free, n);
                 if (r < 0)
                         return r;
                 assert(r > 0);  /* The set uses pointer comparisons, so n must not be in the set. */