diff --git a/core/modules/system/src/Form/ThemeSettingsForm.php b/core/modules/system/src/Form/ThemeSettingsForm.php
index 7e9893c..24c1bd7 100644
--- a/core/modules/system/src/Form/ThemeSettingsForm.php
+++ b/core/modules/system/src/Form/ThemeSettingsForm.php
@@ -12,6 +12,7 @@
 use Drupal\Core\Config\ConfigFactoryInterface;
 use Drupal\Core\Extension\ModuleHandlerInterface;
 use Drupal\Core\Form\ConfigFormBase;
+use Drupal\Component\Utility\UrlHelper;
 
 /**
  * Displays theme configuration for entire site and individual themes.
@@ -464,11 +465,20 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
    * @param string $path
    *   A path relative to the Drupal root or to the public files directory, or
    *   a stream wrapper URI.
+   *
    * @return mixed
    *   A valid path that can be displayed through the theme system, or FALSE if
    *   the path could not be validated.
    */
   protected function validatePath($path) {
+    // Scheme-independant URL (dual HTTP/HTTPS) are valid.
+    if (strncmp($path, "//", 2) == 0) {
+      $http_path = 'http:' . $path;
+      $file_headers = @get_headers($http_path);
+      if (UrlHelper::isValid($http_path) && strstr($file_headers[0], '404') === FALSE && $file_headers != FALSE) {
+        return $path;
+      }
+    }
     // Absolute local file paths are invalid.
     if (drupal_realpath($path) == $path) {
       return FALSE;
diff --git a/core/modules/system/src/Tests/System/ThemeTest.php b/core/modules/system/src/Tests/System/ThemeTest.php
index 667c97a..bf94a8e 100644
--- a/core/modules/system/src/Tests/System/ThemeTest.php
+++ b/core/modules/system/src/Tests/System/ThemeTest.php
@@ -55,7 +55,7 @@ function testThemeSettings() {
     $file = current($this->drupalGetTestFiles('image'));
     $file_relative = strtr($file->uri, array('public:/' => PublicStream::basePath()));
     $default_theme_path = 'core/themes/classy';
-
+    global $base_url;
     $supported_paths = array(
       // Raw stream wrapper URI.
       $file->uri => array(
@@ -82,6 +82,11 @@ function testThemeSettings() {
         'form' => $default_theme_path . '/logo.svg',
         'src' => base_path() . $default_theme_path . '/logo.svg',
       ),
+      // Schema-less urls.
+      substr($base_url, strpos($base_url, '//')) . '/' . $default_theme_path . '/logo.svg' => [
+        'form' => substr($base_url, strpos($base_url, '//')) . '/' . $default_theme_path . '/logo.svg',
+        'src' => substr($base_url, strpos($base_url, '//')) . '/' . $default_theme_path . '/logo.svg',
+      ],
     );
     foreach ($supported_paths as $input => $expected) {
       $edit = array(
@@ -151,6 +156,7 @@ function testThemeSettings() {
       'core/misc/whatever.png',
       // Semi-absolute path to arbitrary non-existing file.
       '/core/misc/whatever.png',
+      '//core/misc/whatever.png',
       // Absolute paths to any local file (even if it exists).
       drupal_realpath($file->uri),
     );
