--- ldapgroups.module.orig 2008-10-21 16:02:14.000000000 -0500 +++ ldapgroups.module.test 2008-10-22 14:35:36.000000000 -0500 @@ -266,6 +266,7 @@ function ldapgroups_user_login(&$user) { // Finally, we grant the roles //need to check for empty roles + $friendly_roles = array(); if ($roles) { foreach ($roles as $role) { if ($friendly_role = $ldap_group_role_mappings[$role]) { @@ -279,12 +280,13 @@ function ldapgroups_user_login(&$user) { } _ldapgroups_create_role($friendly_role); _ldapgroups_grant_role($user, $friendly_role); + $friendly_roles[] = $friendly_role; } } // Store roles in the user object so we know which ones // were granted here - user_save($user, array('ldap_drupal_roles' => $roles)); + $user = user_save($user, array('ldap_drupal_roles' => $friendly_roles)); }