[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

hyatt hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:49:04 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 9701ddb525bf8f82431309abe6c75ace11b9cd5f
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Jul 7 23:24:25 2004 +0000

    	Fix for 3712133, crash from first-line pseudo-style use.
    
            Reviewed by kocienda
    
            * khtml/css/cssstyleselector.cpp:
            (khtml::CSSStyleSelector::styleForElement):
            * khtml/css/cssstyleselector.h:
            * khtml/rendering/render_object.cpp:
            (RenderObject::getPseudoStyle):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6971 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index b6c234d..c2d7e66 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,15 @@
+2004-07-07  David Hyatt  <hyatt at apple.com>
+
+	Fix for 3712133, crash from first-line pseudo-style use.
+	
+        Reviewed by kocienda
+
+        * khtml/css/cssstyleselector.cpp:
+        (khtml::CSSStyleSelector::styleForElement):
+        * khtml/css/cssstyleselector.h:
+        * khtml/rendering/render_object.cpp:
+        (RenderObject::getPseudoStyle):
+
 2004-07-07  Ken Kocienda  <kocienda at apple.com>
 
         Reviewed by Hyatt
diff --git a/WebCore/khtml/css/cssstyleselector.cpp b/WebCore/khtml/css/cssstyleselector.cpp
index 27acaff..7e23f12 100644
--- a/WebCore/khtml/css/cssstyleselector.cpp
+++ b/WebCore/khtml/css/cssstyleselector.cpp
@@ -630,7 +630,7 @@ RenderStyle* CSSStyleSelector::locateSharedStyle()
     return 0;
 }
 
-RenderStyle* CSSStyleSelector::styleForElement(ElementImpl* e, RenderStyle* defaultParent)
+RenderStyle* CSSStyleSelector::styleForElement(ElementImpl* e, RenderStyle* defaultParent, bool allowSharing)
 {
     if (!e->getDocument()->haveStylesheetsLoaded()) {
         if (!styleNotYetAvailable) {
@@ -642,9 +642,11 @@ RenderStyle* CSSStyleSelector::styleForElement(ElementImpl* e, RenderStyle* defa
     }
     
     initElementAndPseudoState(e);
-    style = locateSharedStyle();
-    if (style)
-        return style;
+    if (allowSharing) {
+        style = locateSharedStyle();
+        if (style)
+            return style;
+    }
     initForStyleResolve(e, defaultParent);
 
     style = new (e->getDocument()->renderArena()) RenderStyle();
diff --git a/WebCore/khtml/css/cssstyleselector.h b/WebCore/khtml/css/cssstyleselector.h
index 50c24db..6145c26 100644
--- a/WebCore/khtml/css/cssstyleselector.h
+++ b/WebCore/khtml/css/cssstyleselector.h
@@ -106,7 +106,7 @@ namespace khtml
 
         void initElementAndPseudoState(DOM::ElementImpl* e);
         void initForStyleResolve(DOM::ElementImpl* e, RenderStyle* parentStyle);
-	RenderStyle *styleForElement(DOM::ElementImpl* e, RenderStyle* parentStyle=0);
+	RenderStyle *styleForElement(DOM::ElementImpl* e, RenderStyle* parentStyle=0, bool allowSharing=true);
         RenderStyle* pseudoStyleForElement(RenderStyle::PseudoId pseudoStyle, 
                                            DOM::ElementImpl* e, RenderStyle* parentStyle=0);
 
diff --git a/WebCore/khtml/rendering/render_object.cpp b/WebCore/khtml/rendering/render_object.cpp
index 39455e6..1b99f92 100644
--- a/WebCore/khtml/rendering/render_object.cpp
+++ b/WebCore/khtml/rendering/render_object.cpp
@@ -2095,7 +2095,7 @@ RenderStyle* RenderObject::getPseudoStyle(RenderStyle::PseudoId pseudo, RenderSt
     
     if (pseudo == RenderStyle::FIRST_LINE_INHERITED)
         result = document()->styleSelector()->styleForElement(static_cast<DOM::ElementImpl*>(node), 
-                                                              parentStyle);
+                                                              parentStyle, false);
     else
         result = document()->styleSelector()->pseudoStyleForElement(pseudo, static_cast<DOM::ElementImpl*>(node), 
                                                                     parentStyle);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list