diff --git a/core/lib/Drupal/Core/Config/ConfigImporter.php b/core/lib/Drupal/Core/Config/ConfigImporter.php index 2f6e8fe..8888b4e 100644 --- a/core/lib/Drupal/Core/Config/ConfigImporter.php +++ b/core/lib/Drupal/Core/Config/ConfigImporter.php @@ -214,7 +214,9 @@ public function import() { // https://drupal.org/node/2080823 foreach (array('delete', 'create', 'update') as $op) { foreach ($this->getUnprocessed($op) as $name) { - $this->process($op, $name); + if ($this->checkOp($op, $name)) { + $this->process($op, $name); + } } } // Allow modules to react to a import. @@ -271,6 +273,8 @@ protected function process($op, $name) { * @param string $name * The name of the configuration to process. * + * @throws \Drupal\Core\Config\ConfigImporterException + * * @return bool * TRUE is to continue processing, FALSE otherwise. */ @@ -297,7 +301,7 @@ protected function checkOp($op, $name) { case 'update': if (!$target_exists) { - // Error? + throw new ConfigImporterException(String::format('Update target "@name" is missing.', array('@name' => $name))); } break; }