diff --git a/core/lib/Drupal/Core/Config/BootstrapConfigStorageFactory.php b/core/lib/Drupal/Core/Config/BootstrapConfigStorageFactory.php
index 2462eaf..5491a86 100644
--- a/core/lib/Drupal/Core/Config/BootstrapConfigStorageFactory.php
+++ b/core/lib/Drupal/Core/Config/BootstrapConfigStorageFactory.php
@@ -18,13 +18,18 @@ class BootstrapConfigStorageFactory {
   /**
    * Returns a configuration storage implementation.
    *
+   * @param $class_loader
+   *   The class loader. Normally Composer's ClassLoader, as included by the
+   *   front controller, but may also be decorated; e.g.,
+   *   \Symfony\Component\ClassLoader\ApcClassLoader.
+   *
    * @return \Drupal\Core\Config\StorageInterface
    *   A configuration storage implementation.
    */
-  public static function get() {
+  public static function get($class_loader) {
     $bootstrap_config_storage = Settings::get('bootstrap_config_storage');
     if (!empty($bootstrap_config_storage) && is_callable($bootstrap_config_storage)) {
-      return call_user_func($bootstrap_config_storage);
+      return call_user_func($bootstrap_config_storage, $class_loader);
     }
     // Fallback to the DatabaseStorage.
     return self::getDatabaseStorage();
diff --git a/core/lib/Drupal/Core/DrupalKernel.php b/core/lib/Drupal/Core/DrupalKernel.php
index c014e4a..600fd21 100644
--- a/core/lib/Drupal/Core/DrupalKernel.php
+++ b/core/lib/Drupal/Core/DrupalKernel.php
@@ -1171,7 +1171,7 @@ protected function getConfigStorage() {
       // The active configuration storage may not exist yet; e.g., in the early
       // installer. Catch the exception thrown by config_get_config_directory().
       try {
-        $this->configStorage = BootstrapConfigStorageFactory::get();
+        $this->configStorage = BootstrapConfigStorageFactory::get($this->classLoader);
       }
       catch (\Exception $e) {
         $this->configStorage = new NullStorage();
