aboutsummaryrefslogtreecommitdiffstats
path: root/src/Angular.js
diff options
context:
space:
mode:
authorIgor Minar2011-03-31 21:48:52 -0700
committerIgor Minar2011-03-31 21:48:52 -0700
commitcf1d365f577a99e11c0a619ab621564f258df299 (patch)
tree9dfe95a732fcdeedb6d14200075ba1d0957f02f3 /src/Angular.js
parent78a0f41058a3c8094cf3b8979baa212a3b88b2a6 (diff)
downloadangular.js-cf1d365f577a99e11c0a619ab621564f258df299.tar.bz2
fix infinite loop in elementError when working with detached elements
Diffstat (limited to 'src/Angular.js')
-rw-r--r--src/Angular.js11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/Angular.js b/src/Angular.js
index e297905a..4849edf3 100644
--- a/src/Angular.js
+++ b/src/Angular.js
@@ -702,10 +702,19 @@ function isRenderableElement(element) {
return name && name.charAt(0) != '#' &&
!includes(['TR', 'COL', 'COLGROUP', 'TBODY', 'THEAD', 'TFOOT'], name);
}
+
function elementError(element, type, error) {
+ var parent;
+
while (!isRenderableElement(element)) {
- element = element.parent() || jqLite(document.body);
+ parent = element.parent();
+ if (parent.length) {
+ element = element.parent();
+ } else {
+ return;
+ }
}
+
if (element[0]['$NG_ERROR'] !== error) {
element[0]['$NG_ERROR'] = error;
if (error) {