Index: includes/class_notification.php =================================================================== --- includes/class_notification.php (revision 1255) +++ includes/class_notification.php (working copy) @@ -171,21 +171,24 @@ $masterids = array_merge($this->roles['-notapplicable-'], $this->roles['reporter'], $this->roles['assignee'], $this->roles['favorite'], $this->roles['voter'], $this->roles['commenter']); $masterids = $this->registry->funct->array_strip_empty(array_unique($masterids)); - $userinfo = $this->registry->db->query(" - SELECT user.*, useremail.* - FROM " . TABLE_PREFIX . "useremail AS useremail - LEFT JOIN " . TABLE_PREFIX . "user AS user - ON (user.userid = useremail.userid) - WHERE useremail.userid IN (" . implode(',', $masterids) . ") - "); - while ($user = $this->registry->db->fetch_array($userinfo)) + if (is_array($masterids) AND sizeof($masterids) > 0) { - if (!is_array($this->users["$user[userid]"])) + $userinfo = $this->registry->db->query(" + SELECT user.*, useremail.* + FROM " . TABLE_PREFIX . "useremail AS useremail + LEFT JOIN " . TABLE_PREFIX . "user AS user + ON (user.userid = useremail.userid) + WHERE useremail.userid IN (" . implode(',', $masterids) . ") + "); + while ($user = $this->registry->db->fetch_array($userinfo)) { - $this->users["$user[userid]"] = $user; - unset($this->users["$user[userid]"]['mask'], $this->users["$user[userid]"]['relation']); + if (!is_array($this->users["$user[userid]"])) + { + $this->users["$user[userid]"] = $user; + unset($this->users["$user[userid]"]['mask'], $this->users["$user[userid]"]['relation']); + } + $this->users["$user[userid]"]['options']["$user[relation]"] = $user['mask']; } - $this->users["$user[userid]"]['options']["$user[relation]"] = $user['mask']; } }