summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/user/user.module6
1 files changed, 3 insertions, 3 deletions
diff --git a/modules/user/user.module b/modules/user/user.module
index 5892786f8..015facca2 100644
--- a/modules/user/user.module
+++ b/modules/user/user.module
@@ -572,10 +572,10 @@ function user_role_permissions($roles = array(), $reset = FALSE) {
if ($fetch) {
// Get from the database permissions that were not in the static variable.
// Only role IDs with at least one permission assigned will return rows.
- $result = db_query("SELECT r.rid, p.permission FROM {role} r INNER JOIN {role_permission} p ON p.rid = r.rid WHERE r.rid IN (:fetch)", array(':fetch' => $fetch));
+ $result = db_query("SELECT rid, permission FROM {role_permission} WHERE rid IN (:fetch)", array(':fetch' => $fetch));
- while ($row = db_fetch_array($result)) {
- $stored_permissions[$row['rid']][$row['permission']] = TRUE;
+ foreach ($result as $row) {
+ $stored_permissions[$row->rid][$row->permission] = TRUE;
}
foreach ($fetch as $rid) {
// For every rid, we know we at least assigned an empty array.