Index: trunk/core/kernel/utility/unit_config_reader.php =================================================================== diff -u -N -r2604 -r2613 --- trunk/core/kernel/utility/unit_config_reader.php (.../unit_config_reader.php) (revision 2604) +++ trunk/core/kernel/utility/unit_config_reader.php (.../unit_config_reader.php) (revision 2613) @@ -113,6 +113,22 @@ } } + function ParseConfigClones($prefix) + { + $config = $this->configData[$prefix]; + if(!getArrayValue($config, 'Clones')) + { + return; + } + unset($this->configData[$prefix]['Clones']); + foreach($config['Clones'] as $clone_prefix => $clone_config) + { + $clone_config['Prefix'] = $clone_prefix; + $this->configData[$clone_prefix] = array_merge_recursive2($this->configData[$prefix], $clone_config); + $this->ParseConfigClones($clone_prefix); + } + } + function ParseConfigs() { foreach ($this->configData as $prefix => $config) @@ -174,6 +190,7 @@ $prefix = $config['Prefix']; $config['BasePath'] = dirname(FULL_PATH.$filename); $this->configData[$prefix] = $config; + $this->ParseConfigClones($prefix); } } }