[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