| Index: android_webview/browser/shared_renderer_state.cc
|
| diff --git a/android_webview/browser/shared_renderer_state.cc b/android_webview/browser/shared_renderer_state.cc
|
| index 8845b761cd252c16592d4480003288e53b07de09..582908eb39e699abb54e00ef9294bbd8fe0acc98 100644
|
| --- a/android_webview/browser/shared_renderer_state.cc
|
| +++ b/android_webview/browser/shared_renderer_state.cc
|
| @@ -23,7 +23,7 @@ SharedRendererState::SharedRendererState(
|
| client_on_ui_(client),
|
| weak_factory_on_ui_thread_(this),
|
| ui_thread_weak_ptr_(weak_factory_on_ui_thread_.GetWeakPtr()),
|
| - hardware_allowed_(false),
|
| + inside_hardware_release_(false),
|
| share_context_(NULL) {
|
| DCHECK(ui_loop_->BelongsToCurrentThread());
|
| DCHECK(client_on_ui_);
|
| @@ -62,14 +62,14 @@ scoped_ptr<DrawGLInput> SharedRendererState::PassDrawGLInput() {
|
| return draw_gl_input_.Pass();
|
| }
|
|
|
| -void SharedRendererState::SetHardwareAllowed(bool allowed) {
|
| +void SharedRendererState::SetInsideHardwareRelease(bool inside) {
|
| base::AutoLock lock(lock_);
|
| - hardware_allowed_ = allowed;
|
| + inside_hardware_release_ = inside;
|
| }
|
|
|
| -bool SharedRendererState::IsHardwareAllowed() const {
|
| +bool SharedRendererState::IsInsideHardwareRelease() const {
|
| base::AutoLock lock(lock_);
|
| - return hardware_allowed_;
|
| + return inside_hardware_release_;
|
| }
|
|
|
| void SharedRendererState::SetSharedContext(gpu::GLInProcessContext* context) {
|
| @@ -103,4 +103,15 @@ bool SharedRendererState::ReturnedResourcesEmpty() const {
|
| return returned_resources_.empty();
|
| }
|
|
|
| +InsideHardwareReleaseReset::InsideHardwareReleaseReset(
|
| + SharedRendererState* shared_renderer_state)
|
| + : shared_renderer_state_(shared_renderer_state) {
|
| + DCHECK(!shared_renderer_state_->IsInsideHardwareRelease());
|
| + shared_renderer_state_->SetInsideHardwareRelease(true);
|
| +}
|
| +
|
| +InsideHardwareReleaseReset::~InsideHardwareReleaseReset() {
|
| + shared_renderer_state_->SetInsideHardwareRelease(false);
|
| +}
|
| +
|
| } // namespace android_webview
|
|
|