Index: gin/isolate_holder.cc |
diff --git a/gin/isolate_holder.cc b/gin/isolate_holder.cc |
index 04449d26ab5657712c8c35d64da65b20424852ea..e38190c4285dd49997452b6336b61c0518fcc9f4 100644 |
--- a/gin/isolate_holder.cc |
+++ b/gin/isolate_holder.cc |
@@ -27,10 +27,13 @@ namespace { |
v8::ArrayBuffer::Allocator* g_array_buffer_allocator = nullptr; |
} // namespace |
-IsolateHolder::IsolateHolder() : IsolateHolder(AccessMode::kSingleThread) { |
-} |
+IsolateHolder::IsolateHolder( |
+ scoped_refptr<base::SingleThreadTaskRunner> task_runner) |
+ : IsolateHolder(std::move(task_runner), AccessMode::kSingleThread) {} |
-IsolateHolder::IsolateHolder(AccessMode access_mode) |
+IsolateHolder::IsolateHolder( |
+ scoped_refptr<base::SingleThreadTaskRunner> task_runner, |
+ AccessMode access_mode) |
: access_mode_(access_mode) { |
v8::ArrayBuffer::Allocator* allocator = g_array_buffer_allocator; |
CHECK(allocator) << "You need to invoke gin::IsolateHolder::Initialize first"; |
@@ -41,7 +44,8 @@ IsolateHolder::IsolateHolder(AccessMode access_mode) |
base::SysInfo::AmountOfVirtualMemory()); |
params.array_buffer_allocator = allocator; |
isolate_ = v8::Isolate::New(params); |
- isolate_data_.reset(new PerIsolateData(isolate_, allocator, access_mode)); |
+ isolate_data_.reset( |
+ new PerIsolateData(isolate_, allocator, access_mode, task_runner)); |
isolate_memory_dump_provider_.reset(new V8IsolateMemoryDumpProvider(this)); |
#if defined(OS_WIN) |
{ |