Title: [137675] branches/chromium/1312
- Revision
- 137675
- Author
- cev...@google.com
- Date
- 2012-12-13 16:00:34 -0800 (Thu, 13 Dec 2012)
Log Message
Merge 136845
BUG=162494
Modified Paths
Added Paths
Diff
Modified: branches/chromium/1312/LayoutTests/platform/chromium-win/svg/custom/use-disappears-after-style-update-expected.png
(Binary files differ)
Copied: branches/chromium/1312/LayoutTests/svg/as-image/animated-use-as-image-crash-expected.txt (from rev 136845, trunk/LayoutTests/svg/as-image/animated-use-as-image-crash-expected.txt) (0 => 137675)
--- branches/chromium/1312/LayoutTests/svg/as-image/animated-use-as-image-crash-expected.txt (rev 0)
+++ branches/chromium/1312/LayoutTests/svg/as-image/animated-use-as-image-crash-expected.txt 2012-12-14 00:00:34 UTC (rev 137675)
@@ -0,0 +1,3 @@
+Test passes if loaded into Chromium with Asan enabled and does not crash.
+
+
Copied: branches/chromium/1312/LayoutTests/svg/as-image/animated-use-as-image-crash.html (from rev 136845, trunk/LayoutTests/svg/as-image/animated-use-as-image-crash.html) (0 => 137675)
--- branches/chromium/1312/LayoutTests/svg/as-image/animated-use-as-image-crash.html (rev 0)
+++ branches/chromium/1312/LayoutTests/svg/as-image/animated-use-as-image-crash.html 2012-12-14 00:00:34 UTC (rev 137675)
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<html>
+ <p>Test passes if loaded into Chromium with Asan enabled and does not crash.</p>
+ <img src=''></img>
+ <script type="text/_javascript_">
+ if (window.testRunner) {
+ testRunner.waitUntilDone();
+ testRunner.dumpAsText();
+ }
+
+ setTimeout(function() { if (window.testRunner) testRunner.notifyDone(); }, 500);
+ </script>
+</html>
+
Copied: branches/chromium/1312/LayoutTests/svg/as-image/resources/animated-href-on-use.svg (from rev 136845, trunk/LayoutTests/svg/as-image/resources/animated-href-on-use.svg) (0 => 137675)
--- branches/chromium/1312/LayoutTests/svg/as-image/resources/animated-href-on-use.svg (rev 0)
+++ branches/chromium/1312/LayoutTests/svg/as-image/resources/animated-href-on-use.svg 2012-12-14 00:00:34 UTC (rev 137675)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Tiny//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-tiny.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" baseProfile="tiny" id="svg-root" width="100%" height="100%" viewBox="0 0 480 360">
+ <g>
+ <g transform="translate(10,10)">
+ <defs>
+ <text font-size="10pt" id="useA">Pass if no crash in Asan builds, message 1</text>
+ <text font-size="10pt" id="useB">Pass if no crash in Asan builds, message 2</text>
+ </defs>
+ <use xlink:href=""
+ <set id="useSet" attributeName="xlink:href" begin="0s;useSet.end+0.05s" dur="0.05s" to="#useB"/>
+ </use>
+ </g>
+ </g>
+</svg>
Modified: branches/chromium/1312/Source/WebCore/svg/graphics/SVGImageCache.cpp (137674 => 137675)
--- branches/chromium/1312/Source/WebCore/svg/graphics/SVGImageCache.cpp 2012-12-13 23:52:35 UTC (rev 137674)
+++ branches/chromium/1312/Source/WebCore/svg/graphics/SVGImageCache.cpp 2012-12-14 00:00:34 UTC (rev 137675)
@@ -90,14 +90,9 @@
for (ImageDataMap::iterator it = m_imageDataMap.begin(); it != end; ++it)
it->value.imageNeedsUpdate = true;
- // If we're in the middle of layout, start redrawing dirty
- // images on a timer; otherwise it's safe to draw immediately.
- FrameView* frameView = m_svgImage->frameView();
- if (frameView && (frameView->needsLayout() || frameView->isInLayout())) {
- if (!m_redrawTimer.isActive())
- m_redrawTimer.startOneShot(0);
- } else
- redraw();
+ // Always redraw on a timer because this method may be invoked from destructors of things we are intending to draw.
+ if (!m_redrawTimer.isActive())
+ m_redrawTimer.startOneShot(0);
}
void SVGImageCache::redraw()
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes