Bug 151024 - ASSERTION FAILED: !currContainer->hasTransform() in WebCore::RenderObject::offsetFromAncestorContainer
Summary: ASSERTION FAILED: !currContainer->hasTransform() in WebCore::RenderObject::of...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: WebKit Local Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks: 116980
  Show dependency treegraph
 
Reported: 2015-11-09 07:45 PST by Renata Hodovan
Modified: 2023-04-03 04:44 PDT (History)
5 users (show)

See Also:


Attachments
Test (108 bytes, text/html)
2015-11-09 07:45 PST, Renata Hodovan
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Renata Hodovan 2015-11-09 07:45:27 PST
Created attachment 265051 [details]
Test

Load the attached test with debug MiniBrowser:

<style>
tr {
    position: fixed
}
* {
    transform: scaleY(-14);
}
</style>
<table>
    <tr></tr>
</table>


OS: Ubuntu 15.04 x86_64
Checked build: debug EFL
Checked version: 009fb33


Backtrace:

ASSERTION FAILED: !currContainer->hasTransform()
../../Source/WebCore/rendering/RenderObject.cpp(1400) : WebCore::LayoutSize WebCore::RenderObject::offsetFromAncestorContainer(WebCore::RenderElement&) const
1   0x7f9318511f97 WTFCrash
2   0x7f931efa5bb5 WebCore::RenderObject::offsetFromAncestorContainer(WebCore::RenderElement&) const
3   0x7f931ee6f365 WebCore::RenderBox::pushMappingToContainer(WebCore::RenderLayerModelObject const*, WebCore::RenderGeometryMap&) const
4   0x7f931eee6e2d WebCore::RenderGeometryMap::pushMappingsToAncestor(WebCore::RenderObject const*, WebCore::RenderLayerModelObject const*)
5   0x7f931eee7211 WebCore::RenderGeometryMap::pushMappingsToAncestor(WebCore::RenderLayer const*, WebCore::RenderLayer const*, bool)
6   0x7f931ef18eef WebCore::RenderLayer::updateLayerPositions(WebCore::RenderGeometryMap*, unsigned int)
7   0x7f931ef19431 WebCore::RenderLayer::updateLayerPositions(WebCore::RenderGeometryMap*, unsigned int)
8   0x7f931ef19431 WebCore::RenderLayer::updateLayerPositions(WebCore::RenderGeometryMap*, unsigned int)
9   0x7f931ef19431 WebCore::RenderLayer::updateLayerPositions(WebCore::RenderGeometryMap*, unsigned int)
10  0x7f931ef19431 WebCore::RenderLayer::updateLayerPositions(WebCore::RenderGeometryMap*, unsigned int)
11  0x7f931ef19431 WebCore::RenderLayer::updateLayerPositions(WebCore::RenderGeometryMap*, unsigned int)
12  0x7f931ef18e2b WebCore::RenderLayer::updateLayerPositionsAfterLayout(WebCore::RenderLayer const*, unsigned int)
13  0x7f931ebe736c WebCore::FrameView::layout(bool)
14  0x7f931e6475b8 WebCore::Document::implicitClose()
15  0x7f931eaaab1b WebCore::FrameLoader::checkCallImplicitClose()
16  0x7f931eaaa852 WebCore::FrameLoader::checkCompleted()
17  0x7f931eaaa5c2 WebCore::FrameLoader::finishedParsing()
18  0x7f931e6515e8 WebCore::Document::finishedParsing()
19  0x7f931f9b8799 WebCore::HTMLConstructionSite::finishedParsing()
20  0x7f931e9a4210 WebCore::HTMLTreeBuilder::finished()
21  0x7f931e9748b4 WebCore::HTMLDocumentParser::end()
22  0x7f931e97498d WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd()
23  0x7f931e97366f WebCore::HTMLDocumentParser::prepareToStopParsing()
24  0x7f931e9749d0 WebCore::HTMLDocumentParser::attemptToEnd()
25  0x7f931e974a87 WebCore::HTMLDocumentParser::finish()
26  0x7f931ea959f6 WebCore::DocumentWriter::end()
27  0x7f931ea7f2cc WebCore::DocumentLoader::finishedLoading(double)
28  0x7f931ea7f02a WebCore::DocumentLoader::notifyFinished(WebCore::CachedResource*)
29  0x7f931eb2a437 WebCore::CachedResource::checkNotify()
30  0x7f931eb2a546 WebCore::CachedResource::finishLoading(WebCore::SharedBuffer*)
31  0x7f931eb2673a WebCore::CachedRawResource::finishLoading(WebCore::SharedBuffer*)
Aborted (core dumped)

Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f9318511f9c in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:321
321     *(int *)(uintptr_t)0xbbadbeef = 0;
#0  0x00007f9318511f9c in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:321
#1  0x00007f931efa5bb5 in WebCore::RenderObject::offsetFromAncestorContainer (this=0x7f92fbada5c8, container=...) at ../../Source/WebCore/rendering/RenderObject.cpp:1400
#2  0x00007f931ee6f365 in WebCore::RenderBox::pushMappingToContainer (this=0x7f92fbbb7398, ancestorToStopAt=0x7f92fbada5c8, geometryMap=...) at ../../Source/WebCore/rendering/RenderBox.cpp:2045
#3  0x00007f931eee6e2d in WebCore::RenderGeometryMap::pushMappingsToAncestor (this=0x7ffcc1388da0, renderer=0x7f92fbbb7398, ancestorRenderer=0x7f92fbada5c8) at ../../Source/WebCore/rendering/RenderGeometryMap.cpp:145
#4  0x00007f931eee7211 in WebCore::RenderGeometryMap::pushMappingsToAncestor (this=0x7ffcc1388da0, layer=0x7f92fbafeea0, ancestorLayer=0x7f92fbafed80, respectTransforms=true) at ../../Source/WebCore/rendering/RenderGeometryMap.cpp:199
#5  0x00007f931ef18eef in WebCore::RenderLayer::updateLayerPositions (this=0x7f92fbafeea0, geometryMap=0x7ffcc1388da0, flags=42) at ../../Source/WebCore/rendering/RenderLayer.cpp:469
#6  0x00007f931ef19431 in WebCore::RenderLayer::updateLayerPositions (this=0x7f92fbafed80, geometryMap=0x7ffcc1388da0, flags=42) at ../../Source/WebCore/rendering/RenderLayer.cpp:557
#7  0x00007f931ef19431 in WebCore::RenderLayer::updateLayerPositions (this=0x7f92fbafec60, geometryMap=0x7ffcc1388da0, flags=42) at ../../Source/WebCore/rendering/RenderLayer.cpp:557
#8  0x00007f931ef19431 in WebCore::RenderLayer::updateLayerPositions (this=0x7f92fbafe900, geometryMap=0x7ffcc1388da0, flags=42) at ../../Source/WebCore/rendering/RenderLayer.cpp:557
#9  0x00007f931ef19431 in WebCore::RenderLayer::updateLayerPositions (this=0x7f92fbafe7e0, geometryMap=0x7ffcc1388da0, flags=42) at ../../Source/WebCore/rendering/RenderLayer.cpp:557
#10 0x00007f931ef19431 in WebCore::RenderLayer::updateLayerPositions (this=0x7f92fbafe5a0, geometryMap=0x7ffcc1388da0, flags=10) at ../../Source/WebCore/rendering/RenderLayer.cpp:557
#11 0x00007f931ef18e2b in WebCore::RenderLayer::updateLayerPositionsAfterLayout (this=0x7f92fbafe5a0, rootLayer=0x7f92fbafe5a0, flags=14) at ../../Source/WebCore/rendering/RenderLayer.cpp:460
#12 0x00007f931ebe736c in WebCore::FrameView::layout (this=0x7f92fb825540, allowSubtree=true) at ../../Source/WebCore/page/FrameView.cpp:1455
#13 0x00007f931e6475b8 in WebCore::Document::implicitClose (this=0x7f92fb826a40) at ../../Source/WebCore/dom/Document.cpp:2704
#14 0x00007f931eaaab1b in WebCore::FrameLoader::checkCallImplicitClose (this=0x7f92fbae4098) at ../../Source/WebCore/loader/FrameLoader.cpp:889
#15 0x00007f931eaaa852 in WebCore::FrameLoader::checkCompleted (this=0x7f92fbae4098) at ../../Source/WebCore/loader/FrameLoader.cpp:835
#16 0x00007f931eaaa5c2 in WebCore::FrameLoader::finishedParsing (this=0x7f92fbae4098) at ../../Source/WebCore/loader/FrameLoader.cpp:756
#17 0x00007f931e6515e8 in WebCore::Document::finishedParsing (this=0x7f92fb826a40) at ../../Source/WebCore/dom/Document.cpp:4897
#18 0x00007f931f9b8799 in WebCore::HTMLConstructionSite::finishedParsing (this=0x7f92fbafe6e0) at ../../Source/WebCore/html/parser/HTMLConstructionSite.cpp:403
#19 0x00007f931e9a4210 in WebCore::HTMLTreeBuilder::finished (this=0x7f92fbafe6c0) at ../../Source/WebCore/html/parser/HTMLTreeBuilder.cpp:2937
#20 0x00007f931e9748b4 in WebCore::HTMLDocumentParser::end (this=0x7f92fb82e840) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:393
#21 0x00007f931e97498d in WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd (this=0x7f92fb82e840) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:402
#22 0x00007f931e97366f in WebCore::HTMLDocumentParser::prepareToStopParsing (this=0x7f92fb82e840) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:132
#23 0x00007f931e9749d0 in WebCore::HTMLDocumentParser::attemptToEnd (this=0x7f92fb82e840) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:414
#24 0x00007f931e974a87 in WebCore::HTMLDocumentParser::finish (this=0x7f92fb82e840) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:442
#25 0x00007f931ea959f6 in WebCore::DocumentWriter::end (this=0x7f92fb8249e0) at ../../Source/WebCore/loader/DocumentWriter.cpp:247
#26 0x00007f931ea7f2cc in WebCore::DocumentLoader::finishedLoading (this=0x7f92fb824940, finishTime=0) at ../../Source/WebCore/loader/DocumentLoader.cpp:437
#27 0x00007f931ea7f02a in WebCore::DocumentLoader::notifyFinished (this=0x7f92fb824940, resource=0x7f92fb836000) at ../../Source/WebCore/loader/DocumentLoader.cpp:384
#28 0x00007f931eb2a437 in WebCore::CachedResource::checkNotify (this=0x7f92fb836000) at ../../Source/WebCore/loader/cache/CachedResource.cpp:297
#29 0x00007f931eb2a546 in WebCore::CachedResource::finishLoading (this=0x7f92fb836000) at ../../Source/WebCore/loader/cache/CachedResource.cpp:313
#30 0x00007f931eb2673a in WebCore::CachedRawResource::finishLoading (this=0x7f92fb836000, data=0x7f92fbbbb680) at ../../Source/WebCore/loader/cache/CachedRawResource.cpp:103
#31 0x00007f931eaef168 in WebCore::SubresourceLoader::didFinishLoading (this=0x7f92fb82fa80, finishTime=0) at ../../Source/WebCore/loader/SubresourceLoader.cpp:372
#32 0x00007f931eae9c47 in WebCore::ResourceLoader::didFinishLoading (this=0x7f92fb82fa80, finishTime=0) at ../../Source/WebCore/loader/ResourceLoader.cpp:638
#33 0x00007f931f2db560 in WebCore::readCallback (asyncResult=0x96f9c0, data=0x7f92fbbbd660) at ../../Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:1341
#34 0x00007f9314b015b6 in async_ready_callback_wrapper (source_object=0x8be5b0, res=0x96f9c0, user_data=0x7f92fbbbd660) at ginputstream.c:523
#35 0x00007f9314b27b84 in g_task_return_now (task=0x96f9c0) at gtask.c:1077
#36 0x00007f9314b27ba9 in complete_in_idle_cb (task=0x96f9c0) at gtask.c:1086
#37 0x00007f931455fadd in g_main_dispatch (context=0x8b88d0) at gmain.c:3064
#38 g_main_context_dispatch (context=context@entry=0x8b88d0) at gmain.c:3663
#39 0x00007f9315ecbe58 in _ecore_glib_select__locked (ecore_timeout=<optimized out>, efds=0x7ffcc1389bf0, wfds=0x7ffcc1389b70, rfds=0x7ffcc1389af0, ecore_fds=<optimized out>, ctx=<optimized out>) at lib/ecore/ecore_glib.c:172
#40 _ecore_glib_select (ecore_fds=<optimized out>, rfds=0x7ffcc1389af0, wfds=0x7ffcc1389b70, efds=0x7ffcc1389bf0, ecore_timeout=<optimized out>) at lib/ecore/ecore_glib.c:204
#41 0x00007f9315ecf4a4 in _ecore_main_select (timeout=9.532824124368238e-130) at lib/ecore/ecore_main.c:1459
#42 0x00007f9315ecfed4 in _ecore_main_loop_iterate_internal (once_only=once_only@entry=0) at lib/ecore/ecore_main.c:1893
#43 0x00007f9315ecffc7 in ecore_main_loop_begin () at lib/ecore/ecore_main.c:983
#44 0x00007f931856ce8d in WTF::RunLoop::run () at ../../Source/WTF/wtf/efl/RunLoopEfl.cpp:49
#45 0x00007f931e3cce1b in WebKit::ChildProcessMain<WebKit::WebProcess, WebKit::WebProcessMain> (argc=2, argv=0x7ffcc138a028) at ../../Source/WebKit2/Shared/unix/ChildProcessMain.h:61
#46 0x00007f931e3cca29 in WebKit::WebProcessMainUnix (argc=2, argv=0x7ffcc138a028) at ../../Source/WebKit2/WebProcess/efl/WebProcessMainEfl.cpp:161
#47 0x00000000004008ea in main (argc=2, argv=0x7ffcc138a028) at ../../Source/WebKit2/WebProcess/EntryPoint/unix/WebProcessMain.cpp:44
Comment 1 Brent Fulgham 2016-08-04 17:37:40 PDT
This reproduces under r204037.
Comment 2 Radar WebKit Bug Importer 2016-08-04 17:38:05 PDT
<rdar://problem/27711080>
Comment 3 Ahmad Saleem 2023-04-03 04:44:42 PDT
This was fixed by this commit - https://src.chromium.org/viewvc/blink?view=revision&revision=194540