• commit-queue@webkit.org's avatar
    [CSS Shaders] Cached validated programs are destroyed and recreated when there... · 21ddf69d
    commit-queue@webkit.org authored
    [CSS Shaders] Cached validated programs are destroyed and recreated when there is only one custom filter animating
    https://bugs.webkit.org/show_bug.cgi?id=96563
    
    Patch by Max Vujovic <mvujovic@adobe.com> on 2012-09-12
    Reviewed by Dean Jackson.
    
    Before this patch, in FilterEffectRenderer::build, we would first clear the old effects and
    then create the new effects.
    
    Suppose we have one FECustomFilter animating on the page. This FECustomFilter holds the last
    reference to the cached validated program. Before this patch, we would first destroy the old
    FECustomFilter, which would destroy its cached validated program. Then, we would create the
    new FECustomFilter and have to recreate the validated program.
    
    This patch makes FilterEffectRenderer::build keep the old effects around until we're
    done creating the new effects. This way, we won't recreate validated programs.
    
    No new tests. We can't test this because the validated program cache is not exposed to web
    pages.
    
    * rendering/FilterEffectRenderer.cpp:
    (WebCore::FilterEffectRenderer::build):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128387 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    21ddf69d
ChangeLog 5.65 MB