summaryrefslogtreecommitdiffstats
path: root/WebCore/rendering
diff options
context:
space:
mode:
authorRob Tsuk <robtsuk@google.com>2010-11-30 14:32:49 -0800
committerRob Tsuk <robtsuk@google.com>2010-12-01 11:25:27 -0800
commit4741f41129460f4c8cdca5df12a38305f38945d0 (patch)
tree54af1542ace6cdf17f8efd843f1a3401a00c9ea5 /WebCore/rendering
parent5793dcc19c1dd5f2f3daacd05646ae237f050e58 (diff)
downloadexternal_webkit-4741f41129460f4c8cdca5df12a38305f38945d0.zip
external_webkit-4741f41129460f4c8cdca5df12a38305f38945d0.tar.gz
external_webkit-4741f41129460f4c8cdca5df12a38305f38945d0.tar.bz2
Do not merge.
Re-implement a security fix against our older webkit code base. Change-Id: Iaefa1d060bb71b717558a427e326742f8fa5c4fd modified: WebCore/rendering/RenderBlock.cpp modified: WebCore/rendering/RenderBlock.cpp
Diffstat (limited to 'WebCore/rendering')
-rw-r--r--WebCore/rendering/RenderBlock.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/WebCore/rendering/RenderBlock.cpp b/WebCore/rendering/RenderBlock.cpp
index b720488..c209e36 100644
--- a/WebCore/rendering/RenderBlock.cpp
+++ b/WebCore/rendering/RenderBlock.cpp
@@ -541,6 +541,7 @@ void RenderBlock::removeChild(RenderObject* oldChild)
bool canDeleteAnonymousBlocks = !documentBeingDestroyed() && !isInline() && !oldChild->isInline() &&
(!oldChild->isRenderBlock() || !toRenderBlock(oldChild)->inlineContinuation()) &&
(!prev || (prev->isAnonymousBlock() && prev->childrenInline())) &&
+ (!prev || (!prev->firstChild() || !prev->firstChild()->isInline() || !prev->firstChild()->isRunIn())) &&
(!next || (next->isAnonymousBlock() && next->childrenInline()));
if (canDeleteAnonymousBlocks && prev && next) {
// Take all the children out of the |next| block and put them in