diff --git a/src/ng/rootScope.js b/src/ng/rootScope.js index 6648655133f1..0d9e9078f032 100644 --- a/src/ng/rootScope.js +++ b/src/ng/rootScope.js @@ -520,7 +520,7 @@ function $RootScopeProvider(){ watch = watchers[length]; // Most common watches are on primitives, in which case we can short // circuit it with === operator, only when === fails do we use .equals - if ((value = watch.get(current)) !== (last = watch.last) && + if (watch && (value = watch.get(current)) !== (last = watch.last) && !(watch.eq ? equals(value, last) : (typeof value == 'number' && typeof last == 'number'