| Index: cc/CCLayerTreeHostImpl.cpp | 
| diff --git a/cc/CCLayerTreeHostImpl.cpp b/cc/CCLayerTreeHostImpl.cpp | 
| index 8abbd1ad49fdcc8883d6add2b7d8f8cf9531dc65..e306e440ae3e863a3283cb85c65697a9f098c168 100644 | 
| --- a/cc/CCLayerTreeHostImpl.cpp | 
| +++ b/cc/CCLayerTreeHostImpl.cpp | 
| @@ -500,8 +500,8 @@ void CCLayerTreeHostImpl::releaseContentsTextures() | 
| { | 
| if (m_contentsTexturesPurged) | 
| return; | 
| -    m_resourceProvider->deleteOwnedResources(CCRenderer::ContentPool); | 
| -    m_contentsTexturesPurged = true; | 
| +    m_client->releaseContentsTexturesOnImplThread(); | 
| +    setContentsTexturesPurged(); | 
| m_client->setNeedsCommitOnImplThread(); | 
| m_client->onCanDrawStateChanged(canDraw()); | 
| } | 
| @@ -712,6 +712,12 @@ bool CCLayerTreeHostImpl::initializeRenderer(PassOwnPtr<CCGraphicsContext> conte | 
| return m_renderer; | 
| } | 
|  | 
| +void CCLayerTreeHostImpl::setContentsTexturesPurged() | 
| +{ | 
| +    m_contentsTexturesPurged = true; | 
| +    m_client->onCanDrawStateChanged(canDraw()); | 
| +} | 
| + | 
| void CCLayerTreeHostImpl::resetContentsTexturesPurged() | 
| { | 
| m_contentsTexturesPurged = false; | 
|  |