| Index: Source/WebCore/platform/graphics/chromium/cc/CCVideoLayerImpl.cpp
|
| ===================================================================
|
| --- Source/WebCore/platform/graphics/chromium/cc/CCVideoLayerImpl.cpp (revision 106674)
|
| +++ Source/WebCore/platform/graphics/chromium/cc/CCVideoLayerImpl.cpp (working copy)
|
| @@ -150,8 +150,17 @@
|
| CRASH(); // Someone updated convertVFCFormatToGC3DFormat above but update this!
|
| }
|
|
|
| - for (unsigned plane = 0; plane < frame->planes(); ++plane)
|
| + for (unsigned plane = 0; plane < frame->planes(); ++plane) {
|
| m_textures[plane].m_texture->unreserve();
|
| + // FIXME: ManagedTexture's store a raw pointer to their TextureManager,
|
| + // and the textures we create use layerRenderer->renderSurfaceTextureManager().
|
| + // Since there is no guarantee layerRenderer will still be alive the
|
| + // next time we are called, we clear the texture reference. It would
|
| + // be nice if instead we could rely on textures being invalidated when
|
| + // their manager was deleted so that new textures didn't always have to
|
| + // be recreated for each frame.
|
| + m_textures[plane].m_texture.clear();
|
| + }
|
| m_provider->putCurrentFrame(frame);
|
| }
|
|
|
|
|