diff --git a/core/lib/Drupal/Core/Config/Entity/ConfigEntityStorage.php b/core/lib/Drupal/Core/Config/Entity/ConfigEntityStorage.php index 1641641..6153900 100644 --- a/core/lib/Drupal/Core/Config/Entity/ConfigEntityStorage.php +++ b/core/lib/Drupal/Core/Config/Entity/ConfigEntityStorage.php @@ -204,7 +204,7 @@ protected function doLoadMultiple(array $ids = NULL) { // dynamically generated in EntityInterface::getCacheTagsToInvalidate(). // The cache tags are merged during rendering, and having fewer tags // available improves performance. - $cache_tags = $config->getCacheTags(); + $cache_tags = $configs[$id]->getCacheTags(); $key = array_search('config:' . $configs[$id]->getName(), $cache_tags); if ($key !== FALSE) { unset($cache_tags[$key]); diff --git a/core/tests/Drupal/Tests/Core/Config/Entity/ConfigEntityStorageTest.php b/core/tests/Drupal/Tests/Core/Config/Entity/ConfigEntityStorageTest.php index ae1aa1d..7e0564f 100644 --- a/core/tests/Drupal/Tests/Core/Config/Entity/ConfigEntityStorageTest.php +++ b/core/tests/Drupal/Tests/Core/Config/Entity/ConfigEntityStorageTest.php @@ -105,6 +105,13 @@ class ConfigEntityStorageTest extends UnitTestCase { protected $configManager; /** + * The cache contexts manager. + * + * @var \Drupal\Core\Cache\Context\CacheContextsManager|\PHPUnit_Framework_MockObject_MockObject + */ + protected $cacheContextsManager; + + /** * {@inheritdoc} * * @covers ::__construct @@ -171,12 +178,17 @@ protected function setUp() { $this->configManager = $this->getMock('Drupal\Core\Config\ConfigManagerInterface'); + $this->cacheContextsManager = $this->getMockBuilder('Drupal\Core\Cache\Context\CacheContextsManager') + ->disableOriginalConstructor() + ->getMock(); + $container = new ContainerBuilder(); $container->set('entity.manager', $this->entityManager); $container->set('config.typed', $this->typedConfigManager); $container->set('cache_tags.invalidator', $this->cacheTagsInvalidator); $container->set('config.manager', $this->configManager); $container->set('language_manager', $this->languageManager); + $container->set('cache_contexts_manager', $this->cacheContextsManager); \Drupal::setContainer($container); }