Index: modules/devel/devel.module===================================================================RCS file: /cvs/drupal-contrib/contributions/modules/devel/devel.module,vretrieving revision 1.165diff -u -p -r1.165 devel.module--- modules/devel/devel.module 22 May 2007 02:05:01 -0000 1.165+++ modules/devel/devel.module 22 May 2007 22:29:56 -0000@@ -269,12 +269,20 @@ function devel_block($op = 'list', $delt $dest = drupal_get_destination(); // Try to find at least 10 users that can switch. $roles = user_roles(1, 'switch users');- $where = array('u.uid = 1');- if (count($roles)) {- $where[] = 'r.rid IN ('. implode(',', array_keys($roles)) .')';+ if (isset($roles[2])) {+ // If authenticated users have this permission, just grab+ // the last 10 users, since there won't be records in+ // {user_roles} and every user on the system can switch.+ $users = db_query_range("SELECT DISTINCT u.uid, u.name FROM {users} u ORDER BY u.access DESC", 0, 10);+ }+ else {+ $where = array('u.uid = 1');+ if (count($roles)) {+ $where[] = 'r.rid IN ('. implode(',', array_keys($roles)) .')';+ }+ $where_sql = implode(' OR ', $where);+ $users = db_query_range("SELECT DISTINCT u.uid, u.name FROM {users} u LEFT JOIN {users_roles} r ON u.uid = r.uid WHERE $where_sql ORDER BY u.access DESC", 0, 10); }- $where_sql = implode(' OR ', $where);- $users = db_query_range("SELECT DISTINCT u.uid, u.name FROM {users} u LEFT JOIN {users_roles} r ON u.uid = r.uid WHERE $where_sql ORDER BY u.access DESC", 0, 10); while ($user = db_fetch_object($users)) { $links[$user->uid] = l(theme('placeholder', $user->name), 'devel/switch/'. $user->name, array('attributes' => array('title' => t('This user can switch back.')), 'query' => $dest, 'html' => TRUE)); }