diff --git a/core/lib/Drupal/Core/Config/DrupalConfig.php b/core/lib/Drupal/Core/Config/DrupalConfig.php index 54397e7..20ae021 100644 --- a/core/lib/Drupal/Core/Config/DrupalConfig.php +++ b/core/lib/Drupal/Core/Config/DrupalConfig.php @@ -81,17 +81,21 @@ class DrupalConfig { * The data that was requested. */ public function get($key = '') { + global $conf; + + $name = $this->_verifiedStorage->getName(); + $merged_data = drupal_array_merge_deep($this->data, isset($conf[$name]) ? $conf[$name] : array()); if (empty($key)) { - return $this->data; + return $merged_data; } else { $parts = explode('.', $key); if (count($parts) == 1) { - return isset($this->data[$key]) ? $this->data[$key] : NULL; + return isset($merged_data[$key]) ? $merged_data[$key] : NULL; } else { $key_exists = NULL; - $value = drupal_array_get_nested_value($this->data, $parts, $key_exists); + $value = drupal_array_get_nested_value($merged_data, $parts, $key_exists); return $key_exists ? $value : NULL; } } diff --git a/core/lib/Drupal/Core/Config/DrupalConfigVerifiedStorage.php b/core/lib/Drupal/Core/Config/DrupalConfigVerifiedStorage.php index ca37cdd..d1d2a16 100644 --- a/core/lib/Drupal/Core/Config/DrupalConfigVerifiedStorage.php +++ b/core/lib/Drupal/Core/Config/DrupalConfigVerifiedStorage.php @@ -99,4 +99,12 @@ abstract class DrupalConfigVerifiedStorage implements DrupalConfigVerifiedStorag $this->deleteFromActive(); $this->deleteFile(); } + + /** + * Implements DrupalConfigVerifiedStorageInterface::getName(). + */ + public function getName() { + return $this->name; + } } + diff --git a/core/lib/Drupal/Core/Config/DrupalConfigVerifiedStorageInterface.php b/core/lib/Drupal/Core/Config/DrupalConfigVerifiedStorageInterface.php index 2fdce76..78ae210 100644 --- a/core/lib/Drupal/Core/Config/DrupalConfigVerifiedStorageInterface.php +++ b/core/lib/Drupal/Core/Config/DrupalConfigVerifiedStorageInterface.php @@ -81,4 +81,10 @@ interface DrupalConfigVerifiedStorageInterface { * @todo */ static function getNamesWithPrefix($prefix); + + /** + * Gets the name of this object. + */ + function getName(); } +