Changeset 63530 in webkit


Ignore:
Timestamp:
Jul 16, 2010 1:15:39 AM (14 years ago)
Author:
commit-queue@webkit.org
Message:

2010-07-16 Cosmin Truta <ctruta@chromium.org>

Reviewed by Eric Seidel.

Some SVGs with empty <g> elements crash Chromium on Linux
https://bugs.webkit.org/show_bug.cgi?id=41175

This is a SVG with an empty <g> within a <g>, to which a filter is applied by reference.
The rendered image is all blank.

  • platform/mac/svg/filters/filter-empty-g-expected.checksum: Added
  • platform/mac/svg/filters/filter-empty-g-expected.png: Added
  • platform/mac/svg/filters/filter-empty-g-expected.txt: Added
  • svg/filters/filter-empty-g.svg: Added

2010-07-16 Cosmin Truta <ctruta@chromium.org>

Reviewed by Eric Seidel.

Some SVGs with empty <g> elements crash Chromium on Linux
https://bugs.webkit.org/show_bug.cgi?id=41175

Avoid painting of zero-sized image buffers. Skia can't handle it.

Test: svg/filters/filter-empty-g.svg

  • WebCore/platform/graphics/skia/ImageBufferSkia.cpp: (ImageBuffer::ImageBuffer):
Location:
trunk
Files:
4 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r63529 r63530  
     12010-07-16  Cosmin Truta  <ctruta@chromium.org>
     2
     3        Reviewed by Eric Seidel.
     4
     5        Some SVGs with empty <g> elements crash Chromium on Linux
     6        https://bugs.webkit.org/show_bug.cgi?id=41175
     7
     8        This is a SVG with an empty <g> within a <g>, to which a filter is applied by reference.
     9        The rendered image is all blank.
     10
     11        * platform/mac/svg/filters/filter-empty-g-expected.checksum: Added
     12        * platform/mac/svg/filters/filter-empty-g-expected.png: Added
     13        * platform/mac/svg/filters/filter-empty-g-expected.txt: Added
     14        * svg/filters/filter-empty-g.svg: Added
     15
    1162010-07-16  Shinichiro Hamaji  <hamaji@chromium.org>
    217
  • trunk/LayoutTests/platform/chromium/test_expectations.txt

    r63529 r63530  
    26952695BUG33812 SKIP : fast/dom/icon-url-property.html = FAIL
    26962696
     2697// As long as the Chromium issue 37986 is unresolved, this may crash.
     2698BUG41808 LINUX : svg/filters/filter-empty-g.svg = CRASH PASS
     2699
    26972700// Failing with webkit roll 57659 -> 57677.
    26982701BUG41817 WIN LINUX : fast/backgrounds/svg-as-background-1.html = IMAGE PASS
  • trunk/WebCore/ChangeLog

    r63528 r63530  
     12010-07-16  Cosmin Truta  <ctruta@chromium.org>
     2
     3        Reviewed by Eric Seidel.
     4
     5        Some SVGs with empty <g> elements crash Chromium on Linux
     6        https://bugs.webkit.org/show_bug.cgi?id=41175
     7
     8        Avoid painting of zero-sized image buffers. Skia can't handle it.
     9
     10        Test: svg/filters/filter-empty-g.svg
     11
     12        * WebCore/platform/graphics/skia/ImageBufferSkia.cpp:
     13        (ImageBuffer::ImageBuffer):
     14
    1152010-07-16  Nate Chapin  <japhet@chromium.org>
    216
  • trunk/WebCore/platform/graphics/skia/ImageBufferSkia.cpp

    r60675 r63530  
    7575    // required, but the canvas is currently filled with the magic transparency
    7676    // color. Can we have another way to manage this?
    77     m_data.m_canvas.drawARGB(0, 0, 0, 0, SkXfermode::kClear_Mode);
     77    //
     78    // Avoid drawing on a zero-sized canvas. Skia can't handle it.
     79    if (!size.isZero())
     80        m_data.m_canvas.drawARGB(0, 0, 0, 0, SkXfermode::kClear_Mode);
    7881    success = true;
    7982}
Note: See TracChangeset for help on using the changeset viewer.