[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.15.1-1414-gc69ee75
eric at webkit.org
eric at webkit.org
Thu Oct 29 20:34:57 UTC 2009
The following commit has been merged in the webkit-1.1 branch:
commit 31958da0d17c773981f87a87a684067d9805af2e
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Sep 28 13:35:39 2009 +0000
2009-09-28 Charles Wei <charles.wei at torchmobile.com.cn>
Reviewed by Nikolas Zimmermann.
Fix the crash of SVG that crashes when use a non-exist symbol
https://bugs.webkit.org/show_bug.cgi?id=27693
* svg/custom/use-non-existing-symbol-crash-expected.txt: Added.
* svg/custom/use-non-existing-symbol-crash.svg: Added.
2009-09-28 Charles Wei <charles.wei at torchmobile.com.cn>
Reviewed by Nikolas Zimmermann.
Fix the crash of SVG that crashes when use a non-exist symbol
https://bugs.webkit.org/show_bug.cgi?id=27693
Test: svg/custom/use-non-existing-symbol-crash.svg
* svg/SVGUseElement.cpp:
(WebCore::shadowTreeContainsChangedNodes):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48810 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 6356ee0..008b8da 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,13 @@
+2009-09-28 Charles Wei <charles.wei at torchmobile.com.cn>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Fix the crash of SVG that crashes when use a non-exist symbol
+ https://bugs.webkit.org/show_bug.cgi?id=27693
+
+ * svg/custom/use-non-existing-symbol-crash-expected.txt: Added.
+ * svg/custom/use-non-existing-symbol-crash.svg: Added.
+
2009-09-27 Sam Weinig <sam at webkit.org>
Reviewed by Dan Bernstein.
diff --git a/LayoutTests/svg/custom/use-non-existing-symbol-crash-expected.txt b/LayoutTests/svg/custom/use-non-existing-symbol-crash-expected.txt
new file mode 100644
index 0000000..c7b256d
--- /dev/null
+++ b/LayoutTests/svg/custom/use-non-existing-symbol-crash-expected.txt
@@ -0,0 +1 @@
+PASS -- not crashing, https://bugs.webkit.org/show_bug.cgi?id=27693
diff --git a/LayoutTests/svg/custom/use-non-existing-symbol-crash.svg b/LayoutTests/svg/custom/use-non-existing-symbol-crash.svg
new file mode 100644
index 0000000..5ebca46
--- /dev/null
+++ b/LayoutTests/svg/custom/use-non-existing-symbol-crash.svg
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="800px" height="800px"
+ onload="init()">
+
+<script type="application/ecmascript">
+if (window.layoutTestController)
+ layoutTestController.dumpAsText();
+
+function init() {
+ var cell = document.getElementById('foo');
+ cell.setAttributeNS(null, 'visibility','display');
+
+}
+</script>
+<use id="foo" xlink:href="#doesNotExist"/>
+<text x="10" y="10" > PASS -- not crashing, https://bugs.webkit.org/show_bug.cgi?id=27693 </text>
+</svg>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 3098fbb..c71bd4d 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,15 @@
+2009-09-28 Charles Wei <charles.wei at torchmobile.com.cn>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Fix the crash of SVG that crashes when use a non-exist symbol
+ https://bugs.webkit.org/show_bug.cgi?id=27693
+
+ Test: svg/custom/use-non-existing-symbol-crash.svg
+
+ * svg/SVGUseElement.cpp:
+ (WebCore::shadowTreeContainsChangedNodes):
+
2009-09-28 Joseph Pecoraro <joepeck at webkit.org>
Reviewed by Timothy Hatcher.
diff --git a/WebCore/svg/SVGUseElement.cpp b/WebCore/svg/SVGUseElement.cpp
index 4b66e03..319c488 100644
--- a/WebCore/svg/SVGUseElement.cpp
+++ b/WebCore/svg/SVGUseElement.cpp
@@ -1,6 +1,7 @@
/*
Copyright (C) 2004, 2005, 2006, 2007, 2008 Nikolas Zimmermann <zimmermann at kde.org>
2004, 2005, 2006, 2007 Rob Buis <buis at kde.org>
+ Copyright (C) Research In Motion Limited 2009, All rights reserved. Charles Wei <charles.wei at torchmobile.com.cn>
This file is part of the KDE project
@@ -158,6 +159,9 @@ void SVGUseElement::childrenChanged(bool changedByParser, Node* beforeChange, No
static bool shadowTreeContainsChangedNodes(SVGElementInstance* target)
{
+ if (!target) // when use is referencing an non-existing element, there will be no Instance tree built
+ return false;
+
if (target->needsUpdate())
return true;
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list