Title: [124385] trunk/Source
- Revision
- 124385
- Author
- [email protected]
- Date
- 2012-08-01 16:48:45 -0700 (Wed, 01 Aug 2012)
Log Message
[chromium] Fix lost context handling on hud layer
https://bugs.webkit.org/show_bug.cgi?id=92915
Reviewed by Adrienne Walker.
On lost context we need to release CCScopedTextures, otherwise later on
we will try to re-allocate it using a stale CCResourceProvider.
Test CCLayerTreeHostImplTest.dontUseOldResourcesAfterLostContext
extended.
Source/WebCore:
* platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:
(WebCore::CCHeadsUpDisplayLayerImpl::didLoseContext):
* platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h:
Source/WebKit/chromium:
* tests/CCLayerTreeHostImplTest.cpp:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (124384 => 124385)
--- trunk/Source/WebCore/ChangeLog 2012-08-01 23:43:54 UTC (rev 124384)
+++ trunk/Source/WebCore/ChangeLog 2012-08-01 23:48:45 UTC (rev 124385)
@@ -1,3 +1,20 @@
+2012-08-01 Antoine Labour <[email protected]>
+
+ [chromium] Fix lost context handling on hud layer
+ https://bugs.webkit.org/show_bug.cgi?id=92915
+
+ Reviewed by Adrienne Walker.
+
+ On lost context we need to release CCScopedTextures, otherwise later on
+ we will try to re-allocate it using a stale CCResourceProvider.
+
+ Test CCLayerTreeHostImplTest.dontUseOldResourcesAfterLostContext
+ extended.
+
+ * platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:
+ (WebCore::CCHeadsUpDisplayLayerImpl::didLoseContext):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h:
+
2012-08-01 Kwang Yul Seo <[email protected]>
Read tag names and attributes from the saved tokens in HTMLElementStack
Modified: trunk/Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp (124384 => 124385)
--- trunk/Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp 2012-08-01 23:43:54 UTC (rev 124384)
+++ trunk/Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp 2012-08-01 23:48:45 UTC (rev 124385)
@@ -109,7 +109,7 @@
void CCHeadsUpDisplayLayerImpl::didLoseContext()
{
- m_hudTexture->leak();
+ m_hudTexture.clear();
}
void CCHeadsUpDisplayLayerImpl::drawHudContents(SkCanvas* canvas)
Modified: trunk/Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h (124384 => 124385)
--- trunk/Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h 2012-08-01 23:43:54 UTC (rev 124384)
+++ trunk/Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h 2012-08-01 23:48:45 UTC (rev 124385)
@@ -26,6 +26,7 @@
#ifndef CCHeadsUpDisplayLayerImpl_h
#define CCHeadsUpDisplayLayerImpl_h
+#include "cc/CCFontAtlas.h"
#include "cc/CCLayerImpl.h"
#include "cc/CCScopedTexture.h"
Modified: trunk/Source/WebKit/chromium/ChangeLog (124384 => 124385)
--- trunk/Source/WebKit/chromium/ChangeLog 2012-08-01 23:43:54 UTC (rev 124384)
+++ trunk/Source/WebKit/chromium/ChangeLog 2012-08-01 23:48:45 UTC (rev 124385)
@@ -1,3 +1,18 @@
+2012-08-01 Antoine Labour <[email protected]>
+
+ [chromium] Fix lost context handling on hud layer
+ https://bugs.webkit.org/show_bug.cgi?id=92915
+
+ Reviewed by Adrienne Walker.
+
+ On lost context we need to release CCScopedTextures, otherwise later on
+ we will try to re-allocate it using a stale CCResourceProvider.
+
+ Test CCLayerTreeHostImplTest.dontUseOldResourcesAfterLostContext
+ extended.
+
+ * tests/CCLayerTreeHostImplTest.cpp:
+
2012-08-01 Nico Weber <[email protected]>
[chromium/mac] Delete WebImageCG.cpp
Modified: trunk/Source/WebKit/chromium/tests/CCLayerTreeHostImplTest.cpp (124384 => 124385)
--- trunk/Source/WebKit/chromium/tests/CCLayerTreeHostImplTest.cpp 2012-08-01 23:43:54 UTC (rev 124384)
+++ trunk/Source/WebKit/chromium/tests/CCLayerTreeHostImplTest.cpp 2012-08-01 23:48:45 UTC (rev 124385)
@@ -32,6 +32,7 @@
#include "CCTestCommon.h"
#include "FakeWebGraphicsContext3D.h"
#include "LayerRendererChromium.h"
+#include "cc/CCHeadsUpDisplayLayerImpl.h"
#include "cc/CCIOSurfaceLayerImpl.h"
#include "cc/CCLayerImpl.h"
#include "cc/CCLayerTilingData.h"
@@ -2335,6 +2336,14 @@
ioSurfaceLayer->setLayerTreeHostImpl(m_hostImpl.get());
rootLayer->addChild(ioSurfaceLayer.release());
+ OwnPtr<CCHeadsUpDisplayLayerImpl> hudLayer = CCHeadsUpDisplayLayerImpl::create(6, nullptr);
+ hudLayer->setBounds(IntSize(10, 10));
+ hudLayer->setAnchorPoint(FloatPoint(0, 0));
+ hudLayer->setContentBounds(IntSize(10, 10));
+ hudLayer->setDrawsContent(true);
+ hudLayer->setLayerTreeHostImpl(m_hostImpl.get());
+ rootLayer->addChild(hudLayer.release());
+
// Use a context that supports IOSurfaces
m_hostImpl->initializeLayerRenderer(CCGraphicsContext::create3D(adoptPtr(new FakeWebGraphicsContext3DWithIOSurface)), UnthrottledUploader);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes