Index: content/browser/browser_thread_impl.cc |
diff --git a/content/browser/browser_thread_impl.cc b/content/browser/browser_thread_impl.cc |
index 422011422afa8f8bea82b63d680299980142ae86..0905f54d8cda8a3e74020a998a9197d581af2d96 100644 |
--- a/content/browser/browser_thread_impl.cc |
+++ b/content/browser/browser_thread_impl.cc |
@@ -103,8 +103,14 @@ void BrowserThreadImpl::Init() { |
AtomicWord stored_pointer = base::subtle::NoBarrier_Load(storage); |
BrowserThreadDelegate* delegate = |
reinterpret_cast<BrowserThreadDelegate*>(stored_pointer); |
- if (delegate) |
+ if (delegate) { |
delegate->Init(); |
+ message_loop()->PostTask(FROM_HERE, |
+ base::Bind(&BrowserThreadDelegate::InitAsync, |
+ // Delegate is expected to exist for the |
+ // duration of the thread's lifetime |
+ base::Unretained(delegate))); |
+ } |
} |
// We disable optimizations for this block of functions so the compiler doesn't |