Changeset 139864 in webkit


Ignore:
Timestamp:
Jan 16, 2013 2:59:33 AM (11 years ago)
Author:
allan.jensen@digia.com
Message:

[TexMap] Composited CSS shaders crash when using non-GL TextureMapper
https://bugs.webkit.org/show_bug.cgi?id=106796

Reviewed by Noam Rosenthal.

Fail gracefully when FilterEffectRenderer fails to build the filter effects.

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::BitmapTextureImageBuffer::applyFilters):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r139862 r139864  
     12013-01-16  Allan Sandfeld Jensen  <allan.jensen@digia.com>
     2
     3        [TexMap] Composited CSS shaders crash when using non-GL TextureMapper
     4        https://bugs.webkit.org/show_bug.cgi?id=106796
     5
     6        Reviewed by Noam Rosenthal.
     7
     8        Fail gracefully when FilterEffectRenderer fails to build the filter effects.
     9
     10        * platform/graphics/texmap/TextureMapperImageBuffer.cpp:
     11        (WebCore::BitmapTextureImageBuffer::applyFilters):
     12
    1132013-01-15  Vsevolod Vlasov  <vsevik@chromium.org>
    214
  • trunk/Source/WebCore/platform/graphics/texmap/TextureMapperImageBuffer.cpp

    r138823 r139864  
    172172
    173173    // The renderer parameter is only needed for CSS shaders and reference filters.
    174     renderer->build(0 /*renderer */, filters);
    175     renderer->allocateBackingStoreIfNeeded();
    176     GraphicsContext* context = renderer->inputContext();
    177     context->drawImageBuffer(static_cast<const BitmapTextureImageBuffer&>(contentTexture).m_image.get(), ColorSpaceDeviceRGB, IntPoint::zero());
    178     renderer->apply();
    179     m_image->context()->drawImageBuffer(renderer->output(), ColorSpaceDeviceRGB, renderer->outputRect());
     174    if (renderer->build(0 /*renderer */, filters)) {
     175        renderer->allocateBackingStoreIfNeeded();
     176        GraphicsContext* context = renderer->inputContext();
     177        context->drawImageBuffer(static_cast<const BitmapTextureImageBuffer&>(contentTexture).m_image.get(), ColorSpaceDeviceRGB, IntPoint::zero());
     178        renderer->apply();
     179        m_image->context()->drawImageBuffer(renderer->output(), ColorSpaceDeviceRGB, renderer->outputRect());
     180    }
    180181    return this;
    181182}
Note: See TracChangeset for help on using the changeset viewer.