From fc115bfd0d18017f4bcef1e39fb22d97a98f8ab1 Mon Sep 17 00:00:00 2001 From: Igor Minar Date: Thu, 25 Oct 2012 00:33:36 -0700 Subject: fix($compile): prevent double attr interpolation w/ templateUrl This fixes the issue that caused two attr interpolation observers to be registered for the same attribute as a result of isolate scope definition with attr (@) property for this attribute. Duplicate observers would then fight with each other updating the model. The issue occured only when this directive was used in a repeater because that's when we clone the template node which caused the two observers to point to two different sets of $attr instances. Closes #1166, #836 --- src/ng/compile.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/ng/compile.js') diff --git a/src/ng/compile.js b/src/ng/compile.js index 3fa4691c..ae926923 100644 --- a/src/ng/compile.js +++ b/src/ng/compile.js @@ -899,7 +899,7 @@ function $CompileProvider($provide) { origAsyncDirective = directives.shift(), // The fact that we have to copy and patch the directive seems wrong! derivedSyncDirective = extend({}, origAsyncDirective, { - controller: null, templateUrl: null, transclude: null + controller: null, templateUrl: null, transclude: null, scope: null }); $compileNode.html(''); -- cgit v1.2.3