diff options
Diffstat (limited to 'install/ui/src/freeipa/_base/Builder.js')
-rw-r--r-- | install/ui/src/freeipa/_base/Builder.js | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/install/ui/src/freeipa/_base/Builder.js b/install/ui/src/freeipa/_base/Builder.js index 063261f37..0eb76c4a7 100644 --- a/install/ui/src/freeipa/_base/Builder.js +++ b/install/ui/src/freeipa/_base/Builder.js @@ -149,7 +149,7 @@ define(['dojo/_base/declare', pre = spec.$pre_ops, post = spec.$post_ops; - var s = lang.clone(spec); + var s = lang.mixin({},spec); delete s.$ctor; delete s.$factory; delete s.$mixim_spec; @@ -214,6 +214,9 @@ define(['dojo/_base/declare', var cs = construction_spec, obj = null; + // here we should clone cs.spec to prevent modification of original + // by pre_ops + cs.spec = this._run_preops(this.pre_ops, cs.spec, context); if (cs.pre_ops) { cs.spec = this._run_preops(cs.pre_ops, cs.spec, context); |