Reviewers: ulan, Philippe,

Description:
Ensure default isolate is present in Add/RemoveCallCompletedCallback.

[email protected],[email protected]
BUG=ui_tests don't crash in Chrome


Please review this at https://chromiumcodereview.appspot.com/9979003/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/api.cc


Index: src/api.cc
diff --git a/src/api.cc b/src/api.cc
index ee106a9e9316ec3b734b2735cd3b1ff39f15ef0b..1e23cf2831ed37d767544cf4c7e7633c56cb4acd 100644
--- a/src/api.cc
+++ b/src/api.cc
@@ -5278,6 +5278,7 @@ void V8::RemoveMemoryAllocationCallback(MemoryAllocationCallback callback) {


 void V8::AddCallCompletedCallback(CallCompletedCallback callback) {
+  i::Isolate::EnsureDefaultIsolate();
   if (callback == NULL) return;
   i::Isolate* isolate = i::Isolate::Current();
   if (IsDeadCheck(isolate, "v8::V8::AddLeaveScriptCallback()")) return;
@@ -5286,6 +5287,7 @@ void V8::AddCallCompletedCallback(CallCompletedCallback callback) {


 void V8::RemoveCallCompletedCallback(CallCompletedCallback callback) {
+  i::Isolate::EnsureDefaultIsolate();
   i::Isolate* isolate = i::Isolate::Current();
   if (IsDeadCheck(isolate, "v8::V8::RemoveLeaveScriptCallback()")) return;
   i::V8::RemoveCallCompletedCallback(callback);


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to