| Index: sky/engine/platform/graphics/Canvas2DLayerBridge.cpp
|
| diff --git a/sky/engine/platform/graphics/Canvas2DLayerBridge.cpp b/sky/engine/platform/graphics/Canvas2DLayerBridge.cpp
|
| index 3df94ff34ad91e32ccd7235374d49669af529b17..d61c62ca567dbfa950e139f71afc48cd8c98545f 100644
|
| --- a/sky/engine/platform/graphics/Canvas2DLayerBridge.cpp
|
| +++ b/sky/engine/platform/graphics/Canvas2DLayerBridge.cpp
|
| @@ -317,8 +317,6 @@ void Canvas2DLayerBridge::freeReleasedMailbox()
|
| }
|
| // Invalidate texture state in case the compositor altered it since the copy-on-write.
|
| if (mailboxInfo->m_image) {
|
| - if (isHidden() || releasedMailboxHasExpired())
|
| - mailboxInfo->m_image->getTexture()->resetFlag(static_cast<GrTextureFlags>(GrTexture::kReturnToCache_FlagBit));
|
| mailboxInfo->m_image->getTexture()->textureParamsModified();
|
| mailboxInfo->m_image.clear();
|
| }
|
| @@ -505,9 +503,9 @@ void Canvas2DLayerBridge::mailboxReleased(const WebExternalTextureMailbox& mailb
|
| // texture and remove the mailbox from list to avoid reusing it
|
| // in future.
|
| if (mailboxInfo->m_image) {
|
| - mailboxInfo->m_image->getTexture()->resetFlag(
|
| - static_cast<GrTextureFlags>(GrTexture::kReturnToCache_FlagBit));
|
| - mailboxInfo->m_image->getTexture()->textureParamsModified();
|
| + GrTexture* texture = mailboxInfo->m_image->getTexture();
|
| + if (texture)
|
| + texture->textureParamsModified();
|
| mailboxInfo->m_image.clear();
|
| }
|
| size_t i = mailboxInfo - m_mailboxes.begin();
|
|
|