2011-02-04 Anders Carlsson <andersca@apple.com>
authorandersca@apple.com <andersca@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 4 Feb 2011 18:25:28 +0000 (18:25 +0000)
committerandersca@apple.com <andersca@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 4 Feb 2011 18:25:28 +0000 (18:25 +0000)
        Reviewed by Dan Bernstein.

        Go out of accelerated compositing mode when the drawing area is destroyed
        https://bugs.webkit.org/show_bug.cgi?id=53788

        This fixes a crash in the UI process if a web process crashes while in accelerated compositing mode.

        * UIProcess/DrawingAreaProxyImpl.cpp:
        (WebKit::DrawingAreaProxyImpl::~DrawingAreaProxyImpl):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77640 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebKit2/ChangeLog
Source/WebKit2/UIProcess/DrawingAreaProxyImpl.cpp

index 361ac3747cf4d50fa080211da1332cd08bccd7d9..5e290a37e2bce0178d59c4ed149f4f97c712b3f3 100644 (file)
@@ -1,3 +1,15 @@
+2011-02-04  Anders Carlsson  <andersca@apple.com>
+
+        Reviewed by Dan Bernstein.
+
+        Go out of accelerated compositing mode when the drawing area is destroyed
+        https://bugs.webkit.org/show_bug.cgi?id=53788
+
+        This fixes a crash in the UI process if a web process crashes while in accelerated compositing mode.
+
+        * UIProcess/DrawingAreaProxyImpl.cpp:
+        (WebKit::DrawingAreaProxyImpl::~DrawingAreaProxyImpl):
+
 2011-02-03  Yury Semikhatsky  <yurys@chromium.org>
 
         Reviewed by Pavel Feldman.
index 7b8f9a88f5a4e0e45c1fb9d80d4c88e95faf2837..5924a41d4d06c3dbf52f3407510826fe08a331b9 100644 (file)
@@ -56,6 +56,9 @@ DrawingAreaProxyImpl::DrawingAreaProxyImpl(WebPageProxy* webPageProxy)
 
 DrawingAreaProxyImpl::~DrawingAreaProxyImpl()
 {
+    // Make sure to exit accelerated compositing mode.
+    if (isInAcceleratedCompositingMode())
+        exitAcceleratedCompositingMode();
 }
 
 void DrawingAreaProxyImpl::paint(BackingStore::PlatformGraphicsContext context, const IntRect& rect, Region& unpaintedRegion)