[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
commit-queue at webkit.org
commit-queue at webkit.org
Wed Dec 22 11:16:06 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit dc7fd1c5bc82a261e886c6386dd970670e8496c0
Author: commit-queue at webkit.org <commit-queue at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Fri Jul 16 08:15:39 2010 +0000
2010-07-16 Cosmin Truta <ctruta at 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 at 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):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@63530 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 362e2e8..84a5985 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,18 @@
+2010-07-16 Cosmin Truta <ctruta at 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 Shinichiro Hamaji <hamaji at chromium.org>
Reviewed by Darin Adler.
diff --git a/LayoutTests/platform/chromium/test_expectations.txt b/LayoutTests/platform/chromium/test_expectations.txt
index ced0683..57e6b68 100644
--- a/LayoutTests/platform/chromium/test_expectations.txt
+++ b/LayoutTests/platform/chromium/test_expectations.txt
@@ -2694,6 +2694,9 @@ BUG_JIANLI LINUX : http/tests/local/formdata/send-form-data-with-sliced-file.htm
BUG33812 SKIP : fast/dom/icon-url-property.html = FAIL
+// As long as the Chromium issue 37986 is unresolved, this may crash.
+BUG41808 LINUX : svg/filters/filter-empty-g.svg = CRASH PASS
+
// Failing with webkit roll 57659 -> 57677.
BUG41817 WIN LINUX : fast/backgrounds/svg-as-background-1.html = IMAGE PASS
BUG41817 WIN LINUX : fast/backgrounds/svg-as-background-3.html = IMAGE PASS
diff --git a/LayoutTests/platform/chromium-mac/fast/js/missing-title-end-tag-js-expected.checksum b/LayoutTests/platform/mac/svg/filters/filter-empty-g-expected.checksum
similarity index 100%
copy from LayoutTests/platform/chromium-mac/fast/js/missing-title-end-tag-js-expected.checksum
copy to LayoutTests/platform/mac/svg/filters/filter-empty-g-expected.checksum
diff --git a/LayoutTests/platform/mac/svg/filters/filter-empty-g-expected.txt b/LayoutTests/platform/mac/svg/filters/filter-empty-g-expected.txt
new file mode 100644
index 0000000..07dc60b
--- /dev/null
+++ b/LayoutTests/platform/mac/svg/filters/filter-empty-g-expected.txt
@@ -0,0 +1,11 @@
+layer at (0,0) size 800x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+ RenderSVGRoot {svg} at (0,0) size 800x600
+ RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+ RenderSVGResourceFilter {filter} [id="foo"] [filterUnits=userSpaceOnUse] [primitiveUnits=userSpaceOnUse]
+ [feGaussianBlur stdDeviation="3.00, 3.00"]
+ [SourceAlpha]
+ RenderSVGContainer {g} at (0,0) size 800x600
+ RenderSVGContainer {g} at (0,0) size 800x600
+ [filter="foo"] RenderSVGResourceFilter {filter} at (-80,-60) size 960x720
diff --git a/LayoutTests/svg/filters/filter-empty-g.svg b/LayoutTests/svg/filters/filter-empty-g.svg
new file mode 100644
index 0000000..fc164c6
--- /dev/null
+++ b/LayoutTests/svg/filters/filter-empty-g.svg
@@ -0,0 +1,10 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink">
+<defs>
+<filter id="foo" filterUnits="userSpaceOnUse">
+ <feGaussianBlur in="SourceAlpha" stdDeviation="3"/>
+</filter>
+</defs>
+<g>
+ <g style="filter:url(#foo)"/>
+</g>
+</svg>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index e9e3e70..313f4c5 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,17 @@
+2010-07-16 Cosmin Truta <ctruta at 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):
+
2010-07-16 Nate Chapin <japhet at chromium.org>
Reviewed by Darin Fisher.
diff --git a/WebCore/platform/graphics/skia/ImageBufferSkia.cpp b/WebCore/platform/graphics/skia/ImageBufferSkia.cpp
index 912fd12..f8192fe 100644
--- a/WebCore/platform/graphics/skia/ImageBufferSkia.cpp
+++ b/WebCore/platform/graphics/skia/ImageBufferSkia.cpp
@@ -74,7 +74,10 @@ ImageBuffer::ImageBuffer(const IntSize& size, ImageColorSpace imageColorSpace, b
// Make the background transparent. It would be nice if this wasn't
// required, but the canvas is currently filled with the magic transparency
// color. Can we have another way to manage this?
- m_data.m_canvas.drawARGB(0, 0, 0, 0, SkXfermode::kClear_Mode);
+ //
+ // Avoid drawing on a zero-sized canvas. Skia can't handle it.
+ if (!size.isZero())
+ m_data.m_canvas.drawARGB(0, 0, 0, 0, SkXfermode::kClear_Mode);
success = true;
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list