Index: src/v8.cc |
diff --git a/src/v8.cc b/src/v8.cc |
index c35230d053b4866bffc16797ae650a68ea5b6110..3dab20e07fc79770053cfa12c9b7e0fa2c9238f5 100644 |
--- a/src/v8.cc |
+++ b/src/v8.cc |
@@ -151,17 +151,15 @@ void V8::RemoveCallCompletedCallback(CallCompletedCallback callback) { |
void V8::FireCallCompletedCallback(Isolate* isolate) { |
bool has_call_completed_callbacks = call_completed_callbacks_ != NULL; |
- bool observer_delivery_pending = |
- FLAG_harmony_observation && isolate->observer_delivery_pending(); |
- if (!has_call_completed_callbacks && !observer_delivery_pending) return; |
+ bool microtask_pending = isolate->microtask_pending(); |
+ if (!has_call_completed_callbacks && !microtask_pending) return; |
+ |
HandleScopeImplementer* handle_scope_implementer = |
isolate->handle_scope_implementer(); |
if (!handle_scope_implementer->CallDepthIsZero()) return; |
// Fire callbacks. Increase call depth to prevent recursive callbacks. |
handle_scope_implementer->IncrementCallDepth(); |
- if (observer_delivery_pending) { |
- JSObject::DeliverChangeRecords(isolate); |
- } |
+ if (microtask_pending) Execution::RunMicrotasks(isolate); |
if (has_call_completed_callbacks) { |
for (int i = 0; i < call_completed_callbacks_->length(); i++) { |
call_completed_callbacks_->at(i)(); |