Turns out this resulted in another error in inc-setup/dashboard.php. I replaced the loop in lines 150-177 with this code:
foreach ( (array) $wp_meta_boxes['dashboard'] as $context => $datas ) {
foreach ( (array) $datas as $priority => $data ) {
foreach ( (array) $data as $widget => $value ) {
// Use a temporary variable for title manipulation
$title = isset($value['title']) ? $value['title'] : '';
// Convert boolean false to an empty string
if ($title === FALSE) {
$title = '';
}
// If title is an array, reset to empty string
if (is_array($title)) {
$title = '';
}
$widgets[$widget] = array(
'id' => $widget,
'title' => strip_tags(
preg_replace('/( |)<span.*span>/im', '', $title)
),
'context' => $context,
'priority' => $priority,
);
}
}
}