Bug 151039 - [GTK]ASSERTION FAILED: !m_dirty in WebCore::GraphicsLayerTransform::combined
Summary: [GTK]ASSERTION FAILED: !m_dirty in WebCore::GraphicsLayerTransform::combined
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: WebKit Local Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
: 139050 (view as bug list)
Depends on:
Blocks: 116980
  Show dependency treegraph
 
Reported: 2015-11-09 10:04 PST by Renata Hodovan
Modified: 2022-11-04 21:29 PDT (History)
6 users (show)

See Also:


Attachments
Test (196 bytes, text/html)
2015-11-09 10:04 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 10:04:58 PST
Created attachment 265068 [details]
Test

Load the attached test with debug MiniBrowser:

<style>
* {
    position:fixed;
    -webkit-column-count: +6;
    overflow:auto;
    opacity:0.2;
}
</style>
<font>
    vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
</font>


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


Backtrace:

ASSERTION FAILED: !m_dirty
../../Source/WebCore/platform/graphics/GraphicsLayerTransform.cpp(83) : const WebCore::TransformationMatrix& WebCore::GraphicsLayerTransform::combined() const
1   0x7f6b4f9edf97 WTFCrash
2   0x7f6b57931002 WebCore::GraphicsLayerTransform::combined() const
3   0x7f6b579599f5 WebCore::TextureMapperLayer::computeOverlapRegions(WebCore::Region&, WebCore::Region&, WebCore::TextureMapperLayer::ResolveSelfOverlapMode)
4   0x7f6b57959bd8 WebCore::TextureMapperLayer::computeOverlapRegions(WebCore::Region&, WebCore::Region&, WebCore::TextureMapperLayer::ResolveSelfOverlapMode)
5   0x7f6b57959bd8 WebCore::TextureMapperLayer::computeOverlapRegions(WebCore::Region&, WebCore::Region&, WebCore::TextureMapperLayer::ResolveSelfOverlapMode)
6   0x7f6b57959f79 WebCore::TextureMapperLayer::paintUsingOverlapRegions(WebCore::TextureMapperPaintOptions const&)
7   0x7f6b5795b12d WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
8   0x7f6b5795907a WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
9   0x7f6b579593a8 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
10  0x7f6b5795b10d WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
11  0x7f6b5795907a WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
12  0x7f6b579593a8 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
13  0x7f6b5795b10d WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
14  0x7f6b5795907a WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
15  0x7f6b579593a8 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
16  0x7f6b5795b10d WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
17  0x7f6b5795907a WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
18  0x7f6b579593a8 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
19  0x7f6b5795b10d WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
20  0x7f6b5795840f WebCore::TextureMapperLayer::paint()
21  0x7f6b56ee46c4 WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext(WebCore::TransformationMatrix const&, float, WebCore::FloatRect const&, WebCore::Color const&, bool, WebCore::FloatPoint const&, unsigned int)
22  0x7f6b56f57704 WebKit::WebView::paintToCurrentGLContext()
23  0x7f6b56f0f906 WKViewPaintToCurrentGLContext
24  0x7f6b56f13a6f EwkView::displayTimerFired()
25  0x7f6b56f211b5 void std::_Mem_fn<void (EwkView::*)()>::operator()<, void>(EwkView*) const
26  0x7f6b56f20d35 void std::_Bind<std::_Mem_fn<void (EwkView::*)()> (EwkView*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>)
27  0x7f6b56f2065d void std::_Bind<std::_Mem_fn<void (EwkView::*)()> (EwkView*)>::operator()<, void>()
28  0x7f6b56f1f89a std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void (EwkView::*)()> (EwkView*)> >::_M_invoke(std::_Any_data const&)
29  0x7f6b56a14a82 std::function<void ()>::operator()() const
30  0x7f6b56ac129a WebCore::Timer::fired()
31  0x7f6b578b9c39 WebCore::ThreadTimers::sharedTimerFiredInternal()
Segmentation fault (core dumped)

Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f2eeecfbf9c in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:321
321     *(int *)(uintptr_t)0xbbadbeef = 0;
#0  0x00007f2eeecfbf9c in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:321
#1  0x00007f2ef6c3f002 in WebCore::GraphicsLayerTransform::combined (this=0x7f2ed6010180)
    at ../../Source/WebCore/platform/graphics/GraphicsLayerTransform.cpp:83
#2  0x00007f2ef6c679f5 in WebCore::TextureMapperLayer::computeOverlapRegions (this=0x7f2ed6010140, overlapRegion=..., nonOverlapRegion=..., 
    mode=WebCore::TextureMapperLayer::ResolveSelfOverlapIfNeeded) at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:277
#3  0x00007f2ef6c67bd8 in WebCore::TextureMapperLayer::computeOverlapRegions (this=0x7f2ed600f740, overlapRegion=..., nonOverlapRegion=..., 
    mode=WebCore::TextureMapperLayer::ResolveSelfOverlapIfNeeded) at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:292
#4  0x00007f2ef6c67bd8 in WebCore::TextureMapperLayer::computeOverlapRegions (this=0x7f2ed600fc40, overlapRegion=..., nonOverlapRegion=..., 
    mode=WebCore::TextureMapperLayer::ResolveSelfOverlapAlways) at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:292
#5  0x00007f2ef6c67f79 in WebCore::TextureMapperLayer::paintUsingOverlapRegions (this=0x7f2ed600fc40, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:314
#6  0x00007f2ef6c6912d in WebCore::TextureMapperLayer::paintRecursive (this=0x7f2ed600fc40, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:437
#7  0x00007f2ef6c6707a in WebCore::TextureMapperLayer::paintSelfAndChildren (this=0x7f2ed600ed40, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:179
#8  0x00007f2ef6c673a8 in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica (this=0x7f2ed600ed40, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:219
#9  0x00007f2ef6c6910d in WebCore::TextureMapperLayer::paintRecursive (this=0x7f2ed600ed40, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:433
#10 0x00007f2ef6c6707a in WebCore::TextureMapperLayer::paintSelfAndChildren (this=0x7f2ed600e840, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:179
#11 0x00007f2ef6c673a8 in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica (this=0x7f2ed600e840, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:219
#12 0x00007f2ef6c6910d in WebCore::TextureMapperLayer::paintRecursive (this=0x7f2ed600e840, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:433
#13 0x00007f2ef6c6707a in WebCore::TextureMapperLayer::paintSelfAndChildren (this=0x7f2ed600b840, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:179
#14 0x00007f2ef6c673a8 in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica (this=0x7f2ed600b840, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:219
#15 0x00007f2ef6c6910d in WebCore::TextureMapperLayer::paintRecursive (this=0x7f2ed600b840, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:433
#16 0x00007f2ef6c6707a in WebCore::TextureMapperLayer::paintSelfAndChildren (this=0x7f2ed600a040, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:179
#17 0x00007f2ef6c673a8 in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica (this=0x7f2ed600a040, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:219
#18 0x00007f2ef6c6910d in WebCore::TextureMapperLayer::paintRecursive (this=0x7f2ed600a040, options=...)
    at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:433
#19 0x00007f2ef6c6640f in WebCore::TextureMapperLayer::paint (this=0x7f2ed600a040) at ../../Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:84
#20 0x00007f2ef61f26c4 in WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext (this=0x7f2ed62f2000, matrix=..., opacity=1, clipRect=..., 
    backgroundColor=..., drawsBackground=true, contentPosition=..., PaintFlags=0)
    at ../../Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:107
#21 0x00007f2ef6265704 in WebKit::WebView::paintToCurrentGLContext (this=0x7f2ed62f6000) at ../../Source/WebKit2/UIProcess/CoordinatedGraphics/WebView.cpp:161
#22 0x00007f2ef621d906 in WKViewPaintToCurrentGLContext (viewRef=0x7f2ed62f6000) at ../../Source/WebKit2/UIProcess/API/C/CoordinatedGraphics/WKView.cpp:134
#23 0x00007f2ef6221a6f in EwkView::displayTimerFired (this=0x1b14bc0) at ../../Source/WebKit2/UIProcess/API/efl/EwkView.cpp:582
#24 0x00007f2ef622f1b5 in std::_Mem_fn<void (EwkView::*)()>::operator()<, void>(EwkView*) const (this=0x1b39ed0, __object=0x1b14bc0)
    at /usr/include/c++/4.9/functional:569
#25 0x00007f2ef622ed35 in std::_Bind<std::_Mem_fn<void (EwkView::*)()> (EwkView*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (
    this=0x1b39ed0, __args=<unknown type in webkit/WebKitBuild/Debug/lib/libewebkit2.so.1, CU 0xcebd0a1, DIE 0xcff1926>)
    at /usr/include/c++/4.9/functional:1264
#26 0x00007f2ef622e65d in std::_Bind<std::_Mem_fn<void (EwkView::*)()> (EwkView*)>::operator()<, void>() (this=0x1b39ed0)
    at /usr/include/c++/4.9/functional:1323
#27 0x00007f2ef622d89a in std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void (EwkView::*)()> (EwkView*)> >::_M_invoke(std::_Any_data const&) (
    __functor=...) at /usr/include/c++/4.9/functional:2039
#28 0x00007f2ef5d22a82 in std::function<void ()>::operator()() const (this=0x1b14d58) at /usr/include/c++/4.9/functional:2439
#29 0x00007f2ef5dcf29a in WebCore::Timer::fired (this=0x1b14d20) at ../../Source/WebCore/platform/Timer.h:133
#30 0x00007f2ef6bc7c39 in WebCore::ThreadTimers::sharedTimerFiredInternal (this=0x7f2ed63fa1b8) at ../../Source/WebCore/platform/ThreadTimers.cpp:121
#31 0x00007f2ef6bc7827 in WebCore::ThreadTimers::<lambda()>::operator()(void) const (__closure=0x13ab620) at ../../Source/WebCore/platform/ThreadTimers.cpp:73
#32 0x00007f2ef6bc7e4a in std::_Function_handler<void(), WebCore::ThreadTimers::setSharedTimer(WebCore::SharedTimer*)::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /usr/include/c++/4.9/functional:2039
#33 0x00007f2ef5d22a82 in std::function<void ()>::operator()() const (this=0x7f2efba969e8 <WebCore::MainThreadSharedTimer::singleton()::instance+8>)
    at /usr/include/c++/4.9/functional:2439
#34 0x00007f2ef795a675 in WebCore::MainThreadSharedTimer::fired (this=0x7f2efba969e0 <WebCore::MainThreadSharedTimer::singleton()::instance>)
    at ../../Source/WebCore/platform/MainThreadSharedTimer.cpp:52
#35 0x00007f2ef7b681bc in WebCore::timerEvent () at ../../Source/WebCore/platform/efl/MainThreadSharedTimerEfl.cpp:44
#36 0x00007f2ef122dd1e in _ecore_call_task_cb (data=<optimized out>, func=<optimized out>) at lib/ecore/ecore_private.h:336
#37 _ecore_timer_expired_call (when=894595.41548192897) at lib/ecore/ecore_timer.c:733
#38 0x00007f2ef122de6b in _ecore_timer_expired_timers_call (when=894595.41548192897) at lib/ecore/ecore_timer.c:686
#39 0x00007f2ef1229b41 in _ecore_main_loop_iterate_internal (once_only=once_only@entry=0) at lib/ecore/ecore_main.c:1812
#40 0x00007f2ef1229fc7 in ecore_main_loop_begin () at lib/ecore/ecore_main.c:983
#41 0x000000000040e214 in elm_main (argc=2, argv=0x7ffc32dca9a8) at ../../Tools/MiniBrowser/efl/main.c:2496
#42 0x000000000040e27b in main (argc=2, argv=0x7ffc32dca9a8) at ../../Tools/MiniBrowser/efl/main.c:2500
Comment 1 Brent Fulgham 2016-08-04 18:05:17 PDT
This does not reproduce under r204037. If you believe there is still a problem, please reopen the bug and attach a revised test case.
Comment 2 Renata Hodovan 2016-08-05 10:15:55 PDT
Using the attached test case the issue still seems valid in r204165 with debug EFL and GTK builds.
Comment 3 Michael Catanzaro 2017-12-15 04:42:35 PST
*** Bug 139050 has been marked as a duplicate of this bug. ***
Comment 4 Lauro Moura 2022-11-04 21:29:00 PDT
As of 256319@main, I can't reproduce it in both GTK and WPE ports.