| Index: cc/test/test_context_provider.cc
|
| diff --git a/cc/test/test_context_provider.cc b/cc/test/test_context_provider.cc
|
| index ca7714d30cf9f4ca1b0eaaaeb7c117f7ddd180de..52f6e872ef979ce1f8703e32b7f9399ad4654ab8 100644
|
| --- a/cc/test/test_context_provider.cc
|
| +++ b/cc/test/test_context_provider.cc
|
| @@ -19,7 +19,20 @@ namespace cc {
|
|
|
| // static
|
| scoped_refptr<TestContextProvider> TestContextProvider::Create() {
|
| - return Create(TestWebGraphicsContext3D::Create().Pass());
|
| + return Create(TestWebGraphicsContext3D::Create());
|
| +}
|
| +
|
| +// static
|
| +scoped_refptr<TestContextProvider> TestContextProvider::CreateWorker() {
|
| + scoped_refptr<TestContextProvider> worker_context_provider =
|
| + Create(TestWebGraphicsContext3D::Create());
|
| + if (!worker_context_provider)
|
| + return nullptr;
|
| + // Worker contexts are bound to the thread they are created on.
|
| + if (!worker_context_provider->BindToCurrentThread())
|
| + return nullptr;
|
| + worker_context_provider->SetupLock();
|
| + return worker_context_provider;
|
| }
|
|
|
| // static
|
| @@ -44,8 +57,6 @@ TestContextProvider::TestContextProvider(
|
| }
|
|
|
| TestContextProvider::~TestContextProvider() {
|
| - DCHECK(main_thread_checker_.CalledOnValidThread() ||
|
| - context_thread_checker_.CalledOnValidThread());
|
| }
|
|
|
| bool TestContextProvider::BindToCurrentThread() {
|
| @@ -198,4 +209,9 @@ void TestContextProvider::SetMaxTransferBufferUsageBytes(
|
| context3d_->SetMaxTransferBufferUsageBytes(max_transfer_buffer_usage_bytes);
|
| }
|
|
|
| +bool TestContextProvider::HasBeenDestroyed() {
|
| + DCHECK(context_thread_checker_.CalledOnValidThread());
|
| + return destroyed_;
|
| +}
|
| +
|
| } // namespace cc
|
|
|