Index: modules/profile/profile.module =================================================================== RCS file: /cvs/drupal/drupal/modules/profile/profile.module,v retrieving revision 1.235 diff -u -u -p -r1.235 profile.module --- modules/profile/profile.module 31 Dec 2007 08:54:37 -0000 1.235 +++ modules/profile/profile.module 11 Jan 2008 17:24:05 -0000 @@ -231,7 +231,7 @@ function profile_load_profile(&$user) { } function profile_save_profile(&$edit, &$user, $category, $register = FALSE) { - $result = _profile_get_fields($category, $register); + $result = _profile_get_fields($category, $register, $user); while ($field = db_fetch_object($result)) { if (_profile_field_serialize($field->type)) { $edit[$field->name] = serialize($edit[$field->name]); @@ -552,7 +552,7 @@ function _profile_field_serialize($type return $type == 'date'; } -function _profile_get_fields($category, $register = FALSE) { +function _profile_get_fields($category, $register = FALSE, $user = NULL) { $args = array(); $sql = 'SELECT * FROM {profile_fields} WHERE '; $filters = array(); @@ -564,7 +564,7 @@ function _profile_get_fields($category, $filters[] = "LOWER(category) = LOWER('%s')"; $args[] = $category; } - if (!user_access('administer users')) { + if (!user_access('administer users', $user)) { $filters[] = 'visibility != %d'; $args[] = PROFILE_HIDDEN; }