diff -u b/core/includes/theme.inc b/core/includes/theme.inc --- b/core/includes/theme.inc +++ b/core/includes/theme.inc @@ -378,7 +378,11 @@ if ($cache[$theme]->get('features.logo')) { $logo_path = $cache[$theme]->get('logo.path'); if ($cache[$theme]->get('logo.use_default')) { - $cache[$theme]->set('logo.url', file_create_url($theme_object->getPath() . '/logo.png')); + if (file_exists($favicon = $theme_object->getPath() . '/logo.svg')) { + $cache[$theme]->set('logo.url', file_create_url($theme_object->getPath() . '/logo.svg')); + } else { + $cache[$theme]->set('logo.url', file_create_url($theme_object->getPath() . '/logo.png')); + } } elseif ($logo_path) { $cache[$theme]->set('logo.url', file_create_url($logo_path)); @@ -400,7 +404,7 @@ if ($cache[$theme]->get('features.logo')) { $logo_path = $cache[$theme]->get('logo.path'); if ($cache[$theme]->get('logo.use_default')) { - $cache[$theme]->set('logo.url', file_create_url($theme_object->getPath() . '/logo.svg')); + $cache[$theme]->set('logo.url', file_create_url($theme_object->getPath() . '/logo.png')); } elseif ($logo_path) { $cache[$theme]->set('logo.url', file_create_url($logo_path)); diff -u b/core/modules/system/tests/upgrade/drupal-7.system.database.php b/core/modules/system/tests/upgrade/drupal-7.system.database.php --- b/core/modules/system/tests/upgrade/drupal-7.system.database.php +++ b/core/modules/system/tests/upgrade/drupal-7.system.database.php @@ -213,7 +213,7 @@ )) ->values(array( 'name' => 'color_bartik_stylesheets', - 'value' => serialize('public://color/bartik-09696463/colors.svg'), + 'value' => serialize('public://color/bartik-09696463/colors.css'), )) ->execute(); diff -u b/core/themes/bartik/color/color.inc b/core/themes/bartik/color/color.inc --- b/core/themes/bartik/color/color.inc +++ b/core/themes/bartik/color/color.inc @@ -101,11 +101,6 @@ 'css/colors.css', ), - // Files to copy. - 'copy' => array( - 'logo.svg', - ), - // Gradient definitions. 'gradients' => array( array( diff -u b/core/themes/bartik/logo.svg b/core/themes/bartik/logo.svg --- b/core/themes/bartik/logo.svg +++ b/core/themes/bartik/logo.svg @@ -1 +1 @@ - \ No newline at end of file + diff -u b/core/themes/classy/logo.svg b/core/themes/classy/logo.svg --- b/core/themes/classy/logo.svg +++ b/core/themes/classy/logo.svg @@ -1 +1 @@ - \ No newline at end of file + diff -u b/core/themes/stark/logo.svg b/core/themes/stark/logo.svg --- b/core/themes/stark/logo.svg +++ b/core/themes/stark/logo.svg @@ -1 +1 @@ - \ No newline at end of file + only in patch2: unchanged: --- a/core/modules/color/color.module +++ b/core/modules/color/color.module @@ -104,7 +104,7 @@ function color_preprocess_page(&$variables) { // Override logo. $logo = \Drupal::config('color.theme.' . $theme_key)->get('logo'); - if ($logo && $variables['logo'] && preg_match('!' . $theme_key . '/logo.png$!', $variables['logo'])) { + if ($logo && $variables['logo'] && preg_match('!' . $theme_key . '/logo.(svg|png)$!', $variables['logo'])) { $variables['logo'] = file_create_url($logo); } } @@ -408,10 +408,14 @@ function color_scheme_form_submit($form, FormStateInterface $form_state) { $paths['source'] = drupal_get_path('theme', $theme) . '/'; $paths['files'] = $paths['map'] = array(); - // Save palette and logo location. + // Save logo location only if logo.png is provided. + if (isset($info['copy']) && in_array('logo.png', $info['copy'])) { + $config->set('logo', $paths['target'] . 'logo.png'); + } + + // Save palette. $config ->set('palette', $palette) - ->set('logo', $paths['target'] . 'logo.png') ->save(); // Copy over neutral images.