diff --git a/core/lib/Drupal/Core/Database/Install/Tasks.php b/core/lib/Drupal/Core/Database/Install/Tasks.php
index 8036322..3cc6ffe 100644
--- a/core/lib/Drupal/Core/Database/Install/Tasks.php
+++ b/core/lib/Drupal/Core/Database/Install/Tasks.php
@@ -148,14 +148,25 @@ public function runTasks() {
       }
     }
     // Check for failed results and compile message
-    $message = '';
+    $failure = FALSE;
+    $error = [];
     foreach ($this->results as $result => $success) {
       if (!$success) {
-        $message = SafeMarkup::isSafe($result) ? $result : SafeMarkup::checkPlain($result);
+        $failure = TRUE;
+        $error[] = $result;
       }
     }
-    if (!empty($message)) {
-      $message = SafeMarkup::set('Resolve all issues below to continue the installation. For help configuring your database server, see the <a href="https://www.drupal.org/getting-started/install">installation handbook</a>, or contact your hosting provider.' . $message);
+    if ($failure) {
+      $message = array(
+        'error' => array(
+          '#markup' => t('Resolve all issues below to continue the installation. For help configuring your database server, see the <a href="https://www.drupal.org/getting-started/install">installation handbook</a>, or contact your hosting provider.'),
+        ),
+        'item_list' => array(
+          '#theme' => 'item_list',
+          '#items' => $error,
+        ),
+      );
+      $message = \Drupal::service('renderer')->render(($message), 'error');
       throw new TaskException($message);
     }
   }
