From 88d88bd92e3e91b585a0cabb26d012ec81a60081 Mon Sep 17 00:00:00 2001 From: "Eloy Lafuente (stronk7)" Date: Tue, 19 Nov 2019 18:54:46 +0100 Subject: [PATCH] MDL-67307 core: Fix onject creation from empty value cases The "creating default object from empty value" warning is now consistently thrown if a falsy value is promoted into an stdClass object. Previously some cases like `$null->prop[0] = $val` missed this warning. --- lib/outputcomponents.php | 3 +++ mod/assign/locallib.php | 2 ++ 2 files changed, 5 insertions(+) diff --git a/lib/outputcomponents.php b/lib/outputcomponents.php index c339f5db57d..505e04d4d85 100644 --- a/lib/outputcomponents.php +++ b/lib/outputcomponents.php @@ -3251,6 +3251,9 @@ class initials_bar implements renderable, templatable { if ($letter == $this->current) { $groupletter->selected = $this->current; } + if (!isset($data->group[$groupnumber])) { + $data->group[$groupnumber] = new stdClass(); + } $data->group[$groupnumber]->letter[] = $groupletter; } diff --git a/mod/assign/locallib.php b/mod/assign/locallib.php index ebf32362c6c..f1b8c80437a 100644 --- a/mod/assign/locallib.php +++ b/mod/assign/locallib.php @@ -2457,6 +2457,8 @@ class assign { * @return array An array of userids */ protected function get_grading_userid_list($cached = false, $useridlistid = '') { + global $SESSION; + if ($cached) { if (empty($useridlistid)) { $useridlistid = $this->get_useridlist_key_id();