diff options
author | jbauman <jbauman@chromium.org> | 2015-02-13 16:22:45 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-02-14 00:23:21 +0000 |
commit | 7dc2605574f04851cc6d2bc000a5a65e055d7e56 (patch) | |
tree | 785d82d568ea05bd2caee8a6d117a59773cb8452 /webkit | |
parent | a4f7c8614ff9cb6fca787635fc45a13c9655beef (diff) | |
download | chromium_src-7dc2605574f04851cc6d2bc000a5a65e055d7e56.zip chromium_src-7dc2605574f04851cc6d2bc000a5a65e055d7e56.tar.gz chromium_src-7dc2605574f04851cc6d2bc000a5a65e055d7e56.tar.bz2 |
Add lock support for in process context provider.
The context lost callback will be called on the thread that the command buffer was bound to, and with the lock held.
BUG=454500
Review URL: https://codereview.chromium.org/917223003
Cr-Commit-Position: refs/heads/master@{#316341}
Diffstat (limited to 'webkit')
-rw-r--r-- | webkit/common/gpu/context_provider_in_process.cc | 3 | ||||
-rw-r--r-- | webkit/common/gpu/context_provider_in_process.h | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/webkit/common/gpu/context_provider_in_process.cc b/webkit/common/gpu/context_provider_in_process.cc index 58bc7ec..87b5df6 100644 --- a/webkit/common/gpu/context_provider_in_process.cc +++ b/webkit/common/gpu/context_provider_in_process.cc @@ -161,10 +161,11 @@ class GrContext* ContextProviderInProcess::GrContext() { } void ContextProviderInProcess::SetupLock() { + context3d_->SetLock(&context_lock_); } base::Lock* ContextProviderInProcess::GetLock() { - return nullptr; + return &context_lock_; } bool ContextProviderInProcess::IsContextLost() { diff --git a/webkit/common/gpu/context_provider_in_process.h b/webkit/common/gpu/context_provider_in_process.h index 1bf376c..dcb053a 100644 --- a/webkit/common/gpu/context_provider_in_process.h +++ b/webkit/common/gpu/context_provider_in_process.h @@ -80,6 +80,7 @@ class WEBKIT_GPU_EXPORT ContextProviderInProcess base::Lock destroyed_lock_; bool destroyed_; + base::Lock context_lock_; std::string debug_name_; class LostContextCallbackProxy; scoped_ptr<LostContextCallbackProxy> lost_context_callback_proxy_; |