[Webkit-unassigned] [Bug 64282] New: addLayers, Element::recalcStyle, RenderObject::removeLayers infinite recursion
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Mon Jul 11 08:00:40 PDT 2011
https://bugs.webkit.org/show_bug.cgi?id=64282
Summary: addLayers, Element::recalcStyle,
RenderObject::removeLayers infinite recursion
Product: WebKit
Version: 528+ (Nightly build)
Platform: PC
OS/Version: Windows Vista
Status: NEW
Severity: Normal
Priority: P1
Component: HTML Editing
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: skylined at chromium.org
CC: rniwa at webkit.org
Chromium: https://code.google.com/p/chromium/issues/detail?id=88924
Repro:
<body onload="go()"><pre style="word-wrap: break-word; white-space: pre-wrap;">x</pre></body>
<script>
function go() {
document.execCommand("SelectAll", false);
document.designMode="on";
document.execCommand("Underline");
document.execCommand("InsertHorizontalRule", false);
document.execCommand("InsertOrderedList");
document.execCommand("insertimage", false);
document.execCommand("insertimage", false);
document.execCommand("JustifyRight");
document.execCommand("InsertHorizontalRule", false);
document.execCommand("SelectAll", false);
document.execCommand("insertorderedlist", false);
}
</script>
The repro will cause very deeply (infinitely?) nested tags. It's obvious that this should not happend. This deep nesting leads to stack overflow in one of these three locations:
http://codesearch.google.com/codesearch#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/rendering/RenderObject.cpp&q=RenderObject::removeLayers&exact_package=chromium&l=466
http://codesearch.google.com/codesearch#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/dom/Element.cpp&q=Element::recalcStyle&exact_package=chromium&l=1176
http://codesearch.google.com/codesearch#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/rendering/RenderObject.cpp&q=addLayers&exact_package=chromium&l=442
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list