From eee43395dd9a76c98fa201eb5752702f8b00d2cf Mon Sep 17 00:00:00 2001 From: Petr Vobornik Date: Mon, 15 Apr 2013 15:15:26 +0200 Subject: Builder: build type without prior registration https://fedorahosted.org/freeipa/ticket/3235 --- install/ui/src/freeipa/_base/Builder.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/install/ui/src/freeipa/_base/Builder.js b/install/ui/src/freeipa/_base/Builder.js index 54555c93..446a2a07 100644 --- a/install/ui/src/freeipa/_base/Builder.js +++ b/install/ui/src/freeipa/_base/Builder.js @@ -175,13 +175,13 @@ define(['dojo/_base/declare', cs.pre_ops = cs.pre_ops || []; cs.post_ops = cs.post_ops || []; if (pre) cs.pre_ops.push.call(cs.pre_ops, pre); - if (pre) cs.post_ops.push.call(cs.post_ops, post); - cs.spec = cs.spec || {}; + if (post) cs.post_ops.push.call(cs.post_ops, post); + } - if (!cs.factory && !cs.ctor) { - if (this.ctor) cs.ctor = this.ctor; - else if (this.factory) cs.factory = this.factory; - } + cs.spec = cs.spec || {}; + if (!cs.factory && !cs.ctor) { + if (this.ctor) cs.ctor = this.ctor; + else if (this.factory) cs.factory = this.factory; } return cs; @@ -194,7 +194,7 @@ define(['dojo/_base/declare', if (this.registry) { var cs = this.registry.get(type); - if (!cs) throw construct.no_cs_for_type_error(type); + if (!cs) cs = {}; cs = construct.clone(cs); return cs; } else { -- cgit