summaryrefslogtreecommitdiff
path: root/gui
diff options
context:
space:
mode:
authorGeorge Lebl <jirka@5z.com>2003-07-31 20:01:38 +0000
committerGeorge Lebl <jirka@src.gnome.org>2003-07-31 20:01:38 +0000
commita55b1326c1d40973589d287b544ecd6eade34455 (patch)
tree02e52b158997795a3425763629821de6b9012210 /gui
parenta1199bd41f07902677026380a49020ffe3d3f08d (diff)
downloadgdm-a55b1326c1d40973589d287b544ecd6eade34455.tar.gz
update comments
Thu Jul 31 12:58:26 2003 George Lebl <jirka@5z.com> * XKeepsCrashing, daemon/verify-pam.c: update comments * daemon/misc.c: fix leaks/crashes in the text message dialog stuff * daemon/slave.c: do a chdir as the user id again just for sanity sake * gui/gdmlogin.c, gui/greeter/greeter_item_ulist.c: don't load more then 50 users into the user listing. This should fix random crap happening on large systems using things like NIS (you shouldn't use face browser here anyway) * gui/greeter/greeter.c: remove the use of redundant _set_has_separator * NEWS: update
Diffstat (limited to 'gui')
-rw-r--r--gui/gdmlogin.c16
-rw-r--r--gui/greeter/greeter.c1
-rw-r--r--gui/greeter/greeter_item_ulist.c23
3 files changed, 35 insertions, 5 deletions
diff --git a/gui/gdmlogin.c b/gui/gdmlogin.c
index 03f2ffed..e32b88fa 100644
--- a/gui/gdmlogin.c
+++ b/gui/gdmlogin.c
@@ -3030,6 +3030,9 @@ gdm_login_user_alloc (const gchar *logname, uid_t uid, const gchar *homedir,
if (defface != NULL)
user->picture = (GdkPixbuf *)g_object_ref (G_OBJECT (defface));
+ if (ve_string_empty (logname))
+ return user;
+
/* don't read faces, since that requires the daemon */
if (DOING_GDM_DEVELOPMENT)
return user;
@@ -3219,6 +3222,19 @@ gdm_login_users_init (void)
pwent = getpwent();
while (pwent != NULL) {
+
+ /* FIXME: fix properly, see bug #111830 */
+ if (number_of_users > 50) {
+ user = gdm_login_user_alloc ("",
+ 9999 /*fake uid*/,
+ "/",
+ _("Too many users to list here..."));
+ users = g_list_insert_sorted (users, user,
+ (GCompareFunc) gdm_login_sort_func);
+ /* don't update the size numbers, it's ok if this "user" is
+ offscreen */
+ break;
+ }
if (pwent->pw_shell &&
gdm_login_check_shell (pwent->pw_shell) &&
diff --git a/gui/greeter/greeter.c b/gui/greeter/greeter.c
index bf06aa67..a508fee3 100644
--- a/gui/greeter/greeter.c
+++ b/gui/greeter/greeter.c
@@ -319,7 +319,6 @@ greeter_ctrl_handler (GIOChannel *source,
tmp,
/* avoid warning */ "%s", "");
g_free (tmp);
- gtk_dialog_set_has_separator (GTK_DIALOG (dlg), FALSE);
gdm_wm_center_window (GTK_WINDOW (dlg));
diff --git a/gui/greeter/greeter_item_ulist.c b/gui/greeter/greeter_item_ulist.c
index 1267cdd1..20526ae1 100644
--- a/gui/greeter/greeter_item_ulist.c
+++ b/gui/greeter/greeter_item_ulist.c
@@ -67,6 +67,9 @@ gdm_greeter_user_alloc (const gchar *logname, uid_t uid, const gchar *homedir,
if (defface != NULL)
user->picture = (GdkPixbuf *)g_object_ref (G_OBJECT (defface));
+ if (ve_string_empty (logname))
+ return user;
+
/* don't read faces, since that requires the daemon */
if (DOING_GDM_DEVELOPMENT)
return user;
@@ -265,15 +268,27 @@ gdm_greeter_users_init (void)
pwent = getpwent();
while (pwent != NULL) {
+
+ /* FIXME: fix properly, see bug #111830 */
+ if (number_of_users > 50) {
+ user = gdm_greeter_user_alloc ("",
+ 9999 /*fake uid*/,
+ "/",
+ _("Too many users to list here..."));
+ users = g_list_insert_sorted (users, user,
+ (GCompareFunc) gdm_greeter_sort_func);
+ /* don't update the size numbers */
+ break;
+ }
if (pwent->pw_shell &&
gdm_greeter_check_shell (pwent->pw_shell) &&
!gdm_greeter_check_exclude(pwent)) {
- user = gdm_greeter_user_alloc(pwent->pw_name,
- pwent->pw_uid,
- pwent->pw_dir,
- pwent->pw_gecos);
+ user = gdm_greeter_user_alloc (pwent->pw_name,
+ pwent->pw_uid,
+ pwent->pw_dir,
+ pwent->pw_gecos);
if ((user) && (! g_list_find_custom (users, user,
(GCompareFunc) gdm_greeter_sort_func))) {