Title: [118236] trunk
- Revision
- 118236
- Author
- [email protected]
- Date
- 2012-05-23 13:41:11 -0700 (Wed, 23 May 2012)
Log Message
ASSERT failure toRenderProgress in HTMLProgressElement::didElementStateChange
https://bugs.webkit.org/show_bug.cgi?id=87274
Reviewed by Darin Adler.
Source/WebCore:
Progress bar can't run-in. Prevent it from becoming a run-in, leading to an
unworkable RenderInline.
Test: fast/runin/progress-run-in-crash.html
* html/HTMLProgressElement.cpp:
(WebCore::HTMLProgressElement::didElementStateChange):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):
LayoutTests:
* fast/runin/progress-run-in-crash-expected.txt: Added.
* fast/runin/progress-run-in-crash.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (118235 => 118236)
--- trunk/LayoutTests/ChangeLog 2012-05-23 20:39:30 UTC (rev 118235)
+++ trunk/LayoutTests/ChangeLog 2012-05-23 20:41:11 UTC (rev 118236)
@@ -1,3 +1,13 @@
+2012-05-23 Abhishek Arya <[email protected]>
+
+ ASSERT failure toRenderProgress in HTMLProgressElement::didElementStateChange
+ https://bugs.webkit.org/show_bug.cgi?id=87274
+
+ Reviewed by Darin Adler.
+
+ * fast/runin/progress-run-in-crash-expected.txt: Added.
+ * fast/runin/progress-run-in-crash.html: Added.
+
2012-05-23 Kenneth Russell <[email protected]>
REGRESSION(117918) - 4 webgl/tex-iomage-and-sub-image-2d-with-image tests failing on Mac bots.
Added: trunk/LayoutTests/fast/runin/progress-run-in-crash-expected.txt (0 => 118236)
--- trunk/LayoutTests/fast/runin/progress-run-in-crash-expected.txt (rev 0)
+++ trunk/LayoutTests/fast/runin/progress-run-in-crash-expected.txt 2012-05-23 20:41:11 UTC (rev 118236)
@@ -0,0 +1,4 @@
+WebKit Bug 87274 - ASSERT failure toRenderProgress in HTMLProgressElement::didElementStateChange.
+Test passes if it does not crash.
+
+
Added: trunk/LayoutTests/fast/runin/progress-run-in-crash.html (0 => 118236)
--- trunk/LayoutTests/fast/runin/progress-run-in-crash.html (rev 0)
+++ trunk/LayoutTests/fast/runin/progress-run-in-crash.html 2012-05-23 20:41:11 UTC (rev 118236)
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html>
+WebKit Bug 87274 - ASSERT failure toRenderProgress in HTMLProgressElement::didElementStateChange.<br />
+Test passes if it does not crash.<br />
+<body>
+<progress id="progress1" style="-webkit-appearance: none"></progress><div></div>
+<script>
+if (window.layoutTestController)
+ layoutTestController.dumpAsText();
+
+document.body.offsetTop;
+progress1.style.display = 'run-in';
+</script>
+</body>
+</html>
Property changes on: trunk/LayoutTests/fast/runin/progress-run-in-crash.html
___________________________________________________________________
Added: svn:executable
Modified: trunk/Source/WebCore/ChangeLog (118235 => 118236)
--- trunk/Source/WebCore/ChangeLog 2012-05-23 20:39:30 UTC (rev 118235)
+++ trunk/Source/WebCore/ChangeLog 2012-05-23 20:41:11 UTC (rev 118236)
@@ -1,3 +1,20 @@
+2012-05-23 Abhishek Arya <[email protected]>
+
+ ASSERT failure toRenderProgress in HTMLProgressElement::didElementStateChange
+ https://bugs.webkit.org/show_bug.cgi?id=87274
+
+ Reviewed by Darin Adler.
+
+ Progress bar can't run-in. Prevent it from becoming a run-in, leading to an
+ unworkable RenderInline.
+
+ Test: fast/runin/progress-run-in-crash.html
+
+ * html/HTMLProgressElement.cpp:
+ (WebCore::HTMLProgressElement::didElementStateChange):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):
+
2012-05-23 Andrew Lo <[email protected]>
[BlackBerry] UI thread unnecessarily blocks on WebKit thread when servicing requestAnimationFrames
Modified: trunk/Source/WebCore/html/HTMLProgressElement.cpp (118235 => 118236)
--- trunk/Source/WebCore/html/HTMLProgressElement.cpp 2012-05-23 20:39:30 UTC (rev 118235)
+++ trunk/Source/WebCore/html/HTMLProgressElement.cpp 2012-05-23 20:41:11 UTC (rev 118236)
@@ -134,7 +134,7 @@
void HTMLProgressElement::didElementStateChange()
{
m_value->setWidthPercentage(position() * 100);
- if (renderer()) {
+ if (renderer() && renderer()->isProgress()) {
RenderProgress* render = toRenderProgress(renderer());
bool wasDeterminate = render->isDeterminate();
renderer()->updateFromElement();
Modified: trunk/Source/WebCore/rendering/RenderBlock.cpp (118235 => 118236)
--- trunk/Source/WebCore/rendering/RenderBlock.cpp 2012-05-23 20:39:30 UTC (rev 118235)
+++ trunk/Source/WebCore/rendering/RenderBlock.cpp 2012-05-23 20:41:11 UTC (rev 118236)
@@ -1846,6 +1846,9 @@
if (runInNode && runInNode->hasTagName(selectTag))
return;
+ if (runInNode && runInNode->hasTagName(progressTag))
+ return;
+
RenderObject* curr = runIn->nextSibling();
if (!curr || !curr->isRenderBlock() || !curr->childrenInline())
return;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes