Bug 188161
| Summary: | [WPE] Missing context-lost callback causing ASSERTs | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Zan Dobersek <zan> |
| Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | Keywords: | LayoutTestFailure |
| Priority: | P2 | ||
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Zan Dobersek
The following two tests assert in debug mode due to non-existent context-lost callback:
- fast/canvas/webgl/context-lost-restored.html
- fast/canvas/webgl/WebGLContextEvent.html
Backtrace:
STDERR: ASSERTION FAILED: m_contextLostCallback
STDERR: /home/buildbot/wpe/wpe-linux-64-debug/build/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLES.cpp(197) : virtual int WebCore::Extensions3DOpenGLES::getGraphicsResetStatusARB()
STDERR: 1 0x7fe63b9af975 WTFCrash
STDERR: 2 0x7fe63a6386c8 WebCore::Extensions3DOpenGLES::getGraphicsResetStatusARB()
STDERR: 3 0x7fe63a329128 WebCore::WebGLRenderingContextBase::maybeRestoreContext()
STDERR: 4 0x7fe63a339640 void std::__invoke_impl<void, void (WebCore::WebGLRenderingContextBase::* const&)(), WebCore::WebGLRenderingContextBase*&>(std::__invoke_memfun_deref, void (WebCore::WebGLRenderingContextBase::* const&)(), WebCore::WebGLRenderingContextBase*&)
STDERR: 5 0x7fe63a3395cd std::result_of<void (WebCore::WebGLRenderingContextBase::* const&(WebCore::WebGLRenderingContextBase*&))()>::type std::__invoke<void (WebCore::WebGLRenderingContextBase::* const&)(), WebCore::WebGLRenderingContextBase*&>(void (WebCore::WebGLRenderingContextBase::* const&)(), WebCore::WebGLRenderingContextBase*&)
STDERR: 6 0x7fe63a33957e decltype (__invoke((*this)._M_pmf, (forward<WebCore::WebGLRenderingContextBase*&>)({parm#1}))) std::_Mem_fn_base<void (WebCore::WebGLRenderingContextBase::*)(), true>::operator()<WebCore::WebGLRenderingContextBase*&>(WebCore::WebGLRenderingContextBase*&) const
STDERR: 7 0x7fe63a33952c void std::_Bind<std::_Mem_fn<void (WebCore::WebGLRenderingContextBase::*)()> (WebCore::WebGLRenderingContextBase*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>)
STDERR: 8 0x7fe63a3394a6 void std::_Bind<std::_Mem_fn<void (WebCore::WebGLRenderingContextBase::*)()> (WebCore::WebGLRenderingContextBase*)>::operator()<, void>()
STDERR: 9 0x7fe63a33947a WTF::Function<void ()>::CallableWrapper<std::_Bind<std::_Mem_fn<void (WebCore::WebGLRenderingContextBase::*)()> (WebCore::WebGLRenderingContextBase*)> >::call()
STDERR: 10 0x7fe6375bae90 WTF::Function<void ()>::operator()() const
STDERR: 11 0x7fe6375ca116 WebCore::Timer::fired()
STDERR: 12 0x7fe6399a3ea8 WebCore::ThreadTimers::sharedTimerFiredInternal()
STDERR: 13 0x7fe6399a39cd
STDERR: 14 0x7fe6399ae566
STDERR: 15 0x7fe6375bae90 WTF::Function<void ()>::operator()() const
STDERR: 16 0x7fe639982511 WebCore::MainThreadSharedTimer::fired()
STDERR: 17 0x7fe6399867e4 WTF::RunLoop::Timer<WebCore::MainThreadSharedTimer>::fired()
STDERR: 18 0x7fe63ba2fb8d
STDERR: 19 0x7fe63ba2fbe5
STDERR: 20 0x7fe63ba2f310
STDERR: 21 0x7fe63ba2f33f
STDERR: 22 0x7fe6290d47aa g_main_context_dispatch
STDERR: 23 0x7fe6290d4b38
STDERR: 24 0x7fe6290d4e52 g_main_loop_run
STDERR: 25 0x7fe63ba2f84d WTF::RunLoop::run()
STDERR: 26 0x7fe637f4d4ab int WebKit::ChildProcessMain<WebKit::WebProcess, WebKit::WebProcessMain>(int, char**)
STDERR: 27 0x7fe637f4d143 WebProcessMainUnix
STDERR: 28 0x55d36e85ed9b main
STDERR: 29 0x7fe62815a2e1 __libc_start_main
STDERR: 30 0x55d36e85ec1a _start
STDERR: LEAK: 1 WebPageProxy
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Zan Dobersek
(In reply to Zan Dobersek from comment #0)
> The following two tests assert in debug mode due to non-existent
> context-lost callback:
>
> - fast/canvas/webgl/context-lost-restored.html
> - fast/canvas/webgl/WebGLContextEvent.html
Also:
- webgl/1.0.2/conformance/context/context-lost-restored.html
Zan Dobersek
No longer a problem.