Index: src/object-observe.js |
diff --git a/src/object-observe.js b/src/object-observe.js |
index 3ed27716837d9980a818f6c8d30cd665692eb78b..9f20f22b6955fcadd8532810b49a57bc76ea156e 100644 |
--- a/src/object-observe.js |
+++ b/src/object-observe.js |
@@ -197,11 +197,11 @@ function ObjectGetNotifier(object) { |
function DeliverChangeRecordsForObserver(observer) { |
var observerInfo = observerInfoMap.get(observer); |
if (IS_UNDEFINED(observerInfo)) |
- return; |
+ return false; |
Yang
2012/12/19 09:37:06
This formatting looks very WebKit-ish. We usually
|
var pendingChangeRecords = observerInfo.pendingChangeRecords; |
if (IS_NULL(pendingChangeRecords)) |
- return; |
+ return false; |
Yang
2012/12/19 09:37:06
Ditto.
|
observerInfo.pendingChangeRecords = null; |
delete observationState.pendingObservers[observerInfo.priority]; |
@@ -210,13 +210,14 @@ function DeliverChangeRecordsForObserver(observer) { |
try { |
%Call(void 0, delivered, observer); |
} catch (ex) {} |
+ return true; |
} |
function ObjectDeliverChangeRecords(callback) { |
if (!IS_SPEC_FUNCTION(callback)) |
throw MakeTypeError("observe_non_function", ["deliverChangeRecords"]); |
- DeliverChangeRecordsForObserver(callback); |
+ while (DeliverChangeRecordsForObserver(callback)) {} |
} |
function DeliverChangeRecords() { |