diff options
author | Ray Strode <rstrode@redhat.com> | 2018-09-06 16:08:21 -0400 |
---|---|---|
committer | Ray Strode <rstrode@redhat.com> | 2018-09-06 16:08:21 -0400 |
commit | a341079f88098eb999edb7662521b84dc71131c5 (patch) | |
tree | 026e8921f1e69548543ae75f16c055cd60abe019 /src/daemon.c | |
parent | 45089bd9dac99f05324f9fc15b1135ec0f5ccefa (diff) | |
parent | ffc422c4e81d8c83ea16f937255d9e4d6d730481 (diff) |
Merge branch 'rancell/accountsservice-type-punned-warning'
Diffstat (limited to 'src/daemon.c')
-rw-r--r-- | src/daemon.c | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/src/daemon.c b/src/daemon.c index ea23e60..2a9e1b5 100644 --- a/src/daemon.c +++ b/src/daemon.c @@ -257,8 +257,7 @@ entry_generator_cachedir (Daemon *daemon, g_autoptr(GError) error = NULL; gboolean regular; GHashTableIter iter; - const gchar *name; - User *user; + gpointer key, value; GDir *dir; /* First iteration */ @@ -313,7 +312,9 @@ entry_generator_cachedir (Daemon *daemon, /* Update all the users from the files in the cache dir */ g_hash_table_iter_init (&iter, users); - while (g_hash_table_iter_next (&iter, (gpointer *)&name, (gpointer *)&user)) { + while (g_hash_table_iter_next (&iter, &key, &value)) { + const gchar *name = key; + User *user = value; g_autofree gchar *filename = NULL; g_autoptr(GKeyFile) key_file = NULL; @@ -451,8 +452,7 @@ reload_users (Daemon *daemon) GHashTable *local; GHashTableIter iter; gsize number_of_normal_users = 0; - gpointer name; - User *user; + gpointer name, value; /* Track the users that we saw during our (re)load */ users = create_users_hash_table (); @@ -480,7 +480,8 @@ reload_users (Daemon *daemon) /* Count the non-system users. Mark which users are local, which are not. */ g_hash_table_iter_init (&iter, users); - while (g_hash_table_iter_next (&iter, &name, (gpointer *)&user)) { + while (g_hash_table_iter_next (&iter, &name, &value)) { + User *user = value; if (!user_get_system_account (user)) number_of_normal_users++; user_update_local_account_property (user, g_hash_table_lookup (local, name) != NULL); @@ -505,7 +506,8 @@ reload_users (Daemon *daemon) /* Remove all the old users */ g_hash_table_iter_init (&iter, old_users); - while (g_hash_table_iter_next (&iter, &name, (gpointer *)&user)) { + while (g_hash_table_iter_next (&iter, &name, &value)) { + User *user = value; User *refreshed_user; refreshed_user = g_hash_table_lookup (users, name); @@ -519,7 +521,8 @@ reload_users (Daemon *daemon) /* Register all the new users */ g_hash_table_iter_init (&iter, users); - while (g_hash_table_iter_next (&iter, &name, (gpointer *)&user)) { + while (g_hash_table_iter_next (&iter, &name, &value)) { + User *user = value; User *stale_user; stale_user = g_hash_table_lookup (old_users, name); @@ -977,15 +980,17 @@ finish_list_cached_users (gpointer user_data) DaemonPrivate *priv = daemon_get_instance_private (data->daemon); g_autoptr(GPtrArray) object_paths = NULL; GHashTableIter iter; - const gchar *name; - User *user; + gpointer key, value; uid_t uid; const gchar *shell; object_paths = g_ptr_array_new (); g_hash_table_iter_init (&iter, priv->users); - while (g_hash_table_iter_next (&iter, (gpointer *)&name, (gpointer *)&user)) { + while (g_hash_table_iter_next (&iter, &key, &value)) { + const gchar *name = key; + User *user = value; + uid = user_get_uid (user); shell = user_get_shell (user); |