Skip to content
Snippets Groups Projects
Verified Commit 69b56719 authored by Lee Rowlands's avatar Lee Rowlands
Browse files

Issue #3478628 by oily, alexpott, catch, sheshsharma, osopolar, dunx, shane...

Issue #3478628 by oily, alexpott, catch, sheshsharma, osopolar, dunx, shane birley, joegl: Fatal error: Uncaught TypeError: Drupal\Core\Extension\ThemeHandler::addTheme()

(cherry picked from commit 22ef552a)
parent 61007c9f
No related branches found
No related tags found
1 merge request!10663Issue #3495778: Update phpdoc in FileSaveHtaccessLoggingTest
Pipeline #380187 passed with warnings
Pipeline: drupal

#380194

    Pipeline: drupal

    #380193

      Pipeline: drupal

      #380190

        +2
        ......@@ -67,11 +67,18 @@ public function getDefault() {
        public function listInfo() {
        if (!isset($this->list)) {
        $this->list = [];
        $installed_themes = $this->configFactory->get('core.extension')->get('theme');
        $installed_themes = array_keys($this->configFactory->get('core.extension')->get('theme'));
        if (!empty($installed_themes)) {
        $list = $this->themeList->getList();
        foreach (array_keys($installed_themes) as $theme_name) {
        $this->addTheme($list[$theme_name]);
        foreach ($installed_themes as $theme) {
        // Do not add installed themes that cannot be found by the
        // extension.list.theme service. If a theme does go missing from the
        // file system any call to ::getTheme() will result in an exception
        // and an error being logged. Ignoring the problem here allows the
        // theme system to fix itself while updating.
        if (isset($list[$theme])) {
        $this->addTheme($list[$theme]);
        }
        }
        }
        }
        ......
        ......@@ -46,7 +46,7 @@ protected function setUp(): void {
        $this->configFactory = $this->getConfigFactoryStub([
        'core.extension' => [
        'module' => [],
        'theme' => [],
        'theme' => ['stark' => 'stark'],
        'disabled' => [
        'theme' => [],
        ],
        ......@@ -108,6 +108,16 @@ public function testThemeLibrariesEmpty(): void {
        }
        }
        /**
        * Test that a missing theme doesn't break ThemeHandler::listInfo().
        *
        * @covers ::listInfo
        */
        public function testMissingTheme(): void {
        $themes = $this->themeHandler->listInfo();
        $this->assertSame([], $themes);
        }
        }
        /**
        ......
        0% Loading or .
        You are about to add 0 people to the discussion. Proceed with caution.
        Please register or to comment