[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