diff --git a/modules/node/node.module b/modules/node/node.module index 3e27431..6f9c533 100644 --- a/modules/node/node.module +++ b/modules/node/node.module @@ -2188,9 +2188,10 @@ function node_access_view_all_nodes() { */ function node_db_rewrite_sql($query, $primary_table, $primary_field) { if ($primary_field == 'nid' && !node_access_view_all_nodes()) { - $return['join'] = _node_access_join_sql($primary_table); - $return['where'] = _node_access_where_sql(); - $return['distinct'] = 1; + $where = _node_access_where_sql(); + if ($where) { + $return['where'] = 'EXISTS (SELECT na.nid FROM {node_access} na WHERE ' . $primary_table . '.nid = na.nid AND (' . $wsql . '))'; + } return $return; } }