Coordinated Graphics : disconnectCustomFilterProgram does not do anything.
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 5 Feb 2013 04:45:02 +0000 (04:45 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 5 Feb 2013 04:45:02 +0000 (04:45 +0000)
https://bugs.webkit.org/show_bug.cgi?id=108807

Patch by Gwang Yoon Hwang <ryumiel@company100.net> on 2013-02-04
Reviewed by Anders Carlsson.

We need to add newly created WebCustomFilterProgramProxy to a hashset to
disconnect when CoordinatedLayerTreeHost gets destructed.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):

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

Source/WebKit2/ChangeLog
Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp

index 5dc5297890ba856588f189374bab409bc9404302..c56bf751ec3686ac6b744a6a5bcd7fd48841ecda 100644 (file)
@@ -1,3 +1,16 @@
+2013-02-04  Gwang Yoon Hwang  <ryumiel@company100.net>
+
+        Coordinated Graphics : disconnectCustomFilterProgram does not do anything.
+        https://bugs.webkit.org/show_bug.cgi?id=108807
+
+        Reviewed by Anders Carlsson.
+
+        We need to add newly created WebCustomFilterProgramProxy to a hashset to
+        disconnect when CoordinatedLayerTreeHost gets destructed.
+
+        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
+        (WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):
+
 2013-02-04  Benjamin Poulain  <bpoulain@apple.com>
 
         Kill suspendAnimation(), resumeAnimation() and numberOfActiveAnimations() from DRT/WTR; use Internals
index 6e5fb57231c9b895f2f06ea4151301698810a45c..9bab108a84475b6e6838830c869b42b0d6813d14 100644 (file)
@@ -436,6 +436,7 @@ void CoordinatedLayerTreeHost::checkCustomFilterProgramProxies(const FilterOpera
 
         if (!customFilterProgramProxy->client()) {
             customFilterProgramProxy->setClient(this);
+            m_customFilterPrograms.add(customFilterProgramProxy.get());
             m_webPage->send(Messages::CoordinatedLayerTreeHostProxy::CreateCustomFilterProgram(customFilterProgramProxy->id(), customOperation->validatedProgram()->validatedProgramInfo()));
         } else {
             // If the client was not disconnected then this coordinator must be the client for it.