aboutsummaryrefslogtreecommitdiffstats
path: root/src/ng/compile.js
diff options
context:
space:
mode:
authorIgor Minar2013-10-25 19:10:50 -0700
committerIgor Minar2013-10-28 01:11:18 -0700
commit18ae985c3a3147b589c22f6ec21bacad2f578e2b (patch)
tree8411112a847a2f8de2b6a49a87814f50840385eb /src/ng/compile.js
parent797c99eabee98fedcf01cdad4432569a9ebe8a17 (diff)
downloadangular.js-18ae985c3a3147b589c22f6ec21bacad2f578e2b.tar.bz2
fix($compile): don't instantiate controllers twice for element transclude directives
This is a fix for regression introduced last week by faf5b980. Closes #4654
Diffstat (limited to 'src/ng/compile.js')
-rw-r--r--src/ng/compile.js10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/ng/compile.js b/src/ng/compile.js
index 84432647..7754a8e6 100644
--- a/src/ng/compile.js
+++ b/src/ng/compile.js
@@ -1191,9 +1191,13 @@ function $CompileProvider($provide) {
childTranscludeFn = compile($template, transcludeFn, terminalPriority,
replaceDirective && replaceDirective.name, {
- controllerDirectives: controllerDirectives,
- newIsolateScopeDirective: newIsolateScopeDirective,
- templateDirective: templateDirective,
+ // Don't pass in:
+ // - controllerDirectives - otherwise we'll create duplicates controllers
+ // - newIsolateScopeDirective or templateDirective - combining templates with
+ // element transclusion doesn't make sense.
+ //
+ // We need only transcludeDirective so that we prevent putting transclusion
+ // on the same element more than once.
transcludeDirective: transcludeDirective
});
} else {