WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
239941
[WPE][Debug] http/tests/media/video-redirect.html crashing
https://bugs.webkit.org/show_bug.cgi?id=239941
Summary
[WPE][Debug] http/tests/media/video-redirect.html crashing
Philippe Normand
Reported
2022-05-01 03:53:42 PDT
Happens only with builds made with gcc... Thread 1 (Thread 0x7f0e77cb0640 (LWP 21165)): #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:49 #1 0x00007f0f1faa6867 in __GI_abort () at abort.c:79 #2 0x00007f0f1fe5f8f9 in __gnu_cxx::__verbose_terminate_handler() () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95 #3 0x00007f0f1fe6b62a in __cxxabiv1::__terminate(void (*)()) (handler=<optimized out>) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48 #4 0x00007f0f1fe6b695 in std::terminate() () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:58 #5 0x00007f0f1fe6c4d3 in __cxxabiv1::__cxa_pure_virtual() () at ../../../../libstdc++-v3/libsupc++/pure.cc:50 #6 0x00007f0f2d1791d3 in WebCore::TextureMapperLayer::paintSelf(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6000, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:201 #7 0x00007f0f2d1796c9 in WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6000, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:254 #8 0x00007f0f2d179d8d in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6000, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:316 #9 0x00007f0f2d17b5d9 in WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6000, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:502 #10 0x00007f0f2d179a4d in WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee9800, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:278 #11 0x00007f0f2d179d8d in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee9800, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:316 #12 0x00007f0f2d17b5d9 in WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee9800, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:502 #13 0x00007f0f2d179a4d in WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee9200, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:278 #14 0x00007f0f2d179d8d in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee9200, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:316 #15 0x00007f0f2d17b5d9 in WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee9200, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:502 #16 0x00007f0f2d179a4d in WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6c00, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:278 #17 0x00007f0f2d179d8d in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6c00, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:316 #18 0x00007f0f2d17b5d9 in WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6c00, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:502 #19 0x00007f0f2d179a4d in WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6600, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:278 #20 0x00007f0f2d179d8d in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6600, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:316 #21 0x00007f0f2d17b5d9 in WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee6600, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:502 #22 0x00007f0f2d179a4d in WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee7800, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:278 #23 0x00007f0f2d179d8d in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee7800, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:316 #24 0x00007f0f2d17b5d9 in WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee7800, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:502 #25 0x00007f0f2d179a4d in WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee8600, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:278 #26 0x00007f0f2d179d8d in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee8600, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:316 #27 0x00007f0f2d17b5d9 in WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee8600, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:502 #28 0x00007f0f2d179a4d in WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee8000, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:278 #29 0x00007f0f2d179d8d in WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee8000, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:316 #30 0x00007f0f2d17b5d9 in WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions&) (this=0x7f0ed8ee8000, options=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:502 #31 0x00007f0f2d17897b in WebCore::TextureMapperLayer::paint(WebCore::TextureMapper&) (this=0x7f0ed8ee8000, textureMapper=...) at /app/webkit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:144 #32 0x00007f0f2a5d5515 in WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext(WebCore::TransformationMatrix const&, WebCore::FloatRect const&, unsigned int) (this=0x7f0f1a82b000, matrix=..., clipRect=..., PaintFlags=0) at /app/webkit/Source/WebKit/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:78 #33 0x00007f0f2a5f6ddd in WebKit::ThreadedCompositor::renderLayerTree() (this=0x7f0f1a83eb80) at /app/webkit/Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:240 #34 0x00007f0f2a5f5d9d in operator()() const (__closure=0x7f0f1a840d68) at /app/webkit/Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:58 #35 0x00007f0f2a5fa8ec in WTF::Detail::CallableWrapper<WebKit::ThreadedCompositor::ThreadedCompositor(WebKit::ThreadedCompositor::Client&, WebKit::ThreadedDisplayRefreshMonitor::Client&, WebCore::PlatformDisplayID, const WebCore::IntSize&, float, WebCore::TextureMapper::PaintFlags)::<lambda()>, void>::call(void) (this=0x7f0f1a840d60) at /app/webkit/WebKitBuild/Debug/WTF/Headers/wtf/Function.h:53 #36 0x00007f0f298d0ce5 in WTF::Function<void ()>::operator()() const (this=0x7f0f1a846948) at /app/webkit/WebKitBuild/Debug/WTF/Headers/wtf/Function.h:82 #37 0x00007f0f2a5d8b8c in WebKit::CompositingRunLoop::updateTimerFired() (this=0x7f0f1a846910) at /app/webkit/Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.cpp:188 #38 0x00007f0f2a5f5a52 in std::__invoke_impl<void, void (WebKit::CompositingRunLoop::*&)(), WebKit::CompositingRunLoop*&>(std::__invoke_memfun_deref, void (WebKit::CompositingRunLoop::*&)(), WebKit::CompositingRunLoop*&) (__f=@0x7f0f1a861ca8: (void (WebKit::CompositingRunLoop::*)(class WebKit::CompositingRunLoop * const)) 0x7f0f2a5d8b14 <WebKit::CompositingRunLoop::updateTimerFired()>, __t=@0x7f0f1a861cb8: 0x7f0f1a846910) at /usr/include/c++/11.2.0/bits/invoke.h:74 #39 0x00007f0f2a5f59cb in std::__invoke<void (WebKit::CompositingRunLoop::*&)(), WebKit::CompositingRunLoop*&>(void (WebKit::CompositingRunLoop::*&)(), WebKit::CompositingRunLoop*&) (__fn=@0x7f0f1a861ca8: (void (WebKit::CompositingRunLoop::*)(class WebKit::CompositingRunLoop * const)) 0x7f0f2a5d8b14 <WebKit::CompositingRunLoop::updateTimerFired()>) at /usr/include/c++/11.2.0/bits/invoke.h:96 #40 0x00007f0f2a5f5941 in std::_Bind<void (WebKit::CompositingRunLoop::*(WebKit::CompositingRunLoop*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=0x7f0f1a861ca8, __args=...) at /usr/include/c++/11.2.0/functional:420 #41 0x00007f0f2a5f58d3 in std::_Bind<void (WebKit::CompositingRunLoop::*(WebKit::CompositingRunLoop*))()>::operator()<, void>() (this=0x7f0f1a861ca8) at /usr/include/c++/11.2.0/functional:503 #42 0x00007f0f2a5f587c in WTF::Detail::CallableWrapper<std::_Bind<void (WebKit::CompositingRunLoop::*(WebKit::CompositingRunLoop*))()>, void>::call() (this=0x7f0f1a861ca0) at /app/webkit/WebKitBuild/Debug/WTF/Headers/wtf/Function.h:53 #43 0x00007f0f298d0ce5 in WTF::Function<void ()>::operator()() const (this=0x7f0f1a846940) at /app/webkit/WebKitBuild/Debug/WTF/Headers/wtf/Function.h:82 #44 0x00007f0f2a5f589c in WTF::RunLoop::Timer<WebKit::CompositingRunLoop>::fired() (this=0x7f0f1a846918) at /app/webkit/WebKitBuild/Debug/WTF/Headers/wtf/RunLoop.h:188 #45 0x00007f0f2cf6efb7 in operator()(gpointer) const (__closure=0x0, userData=0x7f0f1a846918) at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:177 #46 0x00007f0f2cf6eff7 in _FUN(gpointer) () at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:181 #47 0x00007f0f2cf6e509 in operator()(GSource*, GSourceFunc, gpointer) const (__closure=0x0, source=0x55d12f4b1f60, callback=0x7f0f2cf6efda <_FUN(gpointer)>, userData=0x7f0f1a846918) at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:53 #48 0x00007f0f2cf6e557 in _FUN(GSource*, GSourceFunc, gpointer) () at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:56 #49 0x00007f0f20290294 in g_main_dispatch (context=0x7f0e60000b60) at ../glib/gmain.c:3381 #50 g_main_context_dispatch (context=0x7f0e60000b60) at ../glib/gmain.c:4099 #51 0x00007f0f20290638 in g_main_context_iterate (context=0x7f0e60000b60, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4175 #52 0x00007f0f20290943 in g_main_loop_run (loop=0x7f0e60001cb0) at ../glib/gmain.c:4373 #53 0x00007f0f2cf6ebc2 in WTF::RunLoop::run() () at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:108 #54 0x00007f0f2a5d8233 in operator()() const (__closure=0x7f0f1a83f230) at /app/webkit/Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.cpp:49 #55 0x00007f0f2a5dd366 in WTF::Detail::CallableWrapper<WebKit::createRunLoop()::<lambda()>, void>::call(void) (this=0x7f0f1a83f228) at /app/webkit/WebKitBuild/Debug/WTF/Headers/wtf/Function.h:53 #56 0x00007f0f298d0ce5 in WTF::Function<void ()>::operator()() const (this=0x7f0e77cafb80) at /app/webkit/WebKitBuild/Debug/WTF/Headers/wtf/Function.h:82 #57 0x00007f0f2ceca517 in WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) (newThreadContext=0x7f0f1a846960) at /app/webkit/Source/WTF/wtf/Threading.cpp:235 #58 0x00007f0f2cf7b7d7 in WTF::wtfThreadEntryPoint(void*) (context=0x7f0f1a846960) at /app/webkit/Source/WTF/wtf/posix/ThreadingPOSIX.cpp:242 #59 0x00007f0f1d88e3ba in start_thread (arg=0x7f0e77cb0640) at pthread_create.c:481 #60 0x00007f0f1fb85b03 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 STDERR: pure virtual method called STDERR: terminate called without an active exception STDERR: WPEWebProcess terminated (pid 20903) for reason: crash
Attachments
Add attachment
proposed patch, testcase, etc.
Philippe Normand
Comment 1
2022-05-01 03:54:31 PDT
Not sure how to fix this properly, this might be a workaround... diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp index 49e80eeb6e40..63e8f3d4ad36 100644 --- a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp +++ b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp @@ -182,7 +182,7 @@ void TextureMapperLayer::paintSelf(TextureMapperPaintOptions& options) solidColorLayer.setColor(m_state.solidColor); contentsLayer = &solidColorLayer; } - if (!contentsLayer) + if (!contentsLayer || !contentsLayer->client()) return; if (!m_state.contentsTileSize.isEmpty()) { diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h b/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h index 12f56ab813ba..0d3c43578f96 100644 --- a/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h +++ b/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h @@ -45,9 +45,7 @@ public: } void setClient(TextureMapperPlatformLayer::Client* client) { m_client = client; } - -protected: - TextureMapperPlatformLayer::Client* client() { return m_client; } + TextureMapperPlatformLayer::Client* client() const { return m_client; } private: TextureMapperPlatformLayer::Client* m_client { nullptr };
Philippe Normand
Comment 2
2022-05-01 04:56:26 PDT
Also affected by this crash: fast/mediastream/getUserMedia-rvfc.html [ Crash ] fast/mediastream/getUserMedia-video-rescaling.html [ Crash ] fast/mediastream/mediastreamtrack-video-clone.html [ Crash ] fast/mediastream/play-newly-added-audio-track.html [ Crash ] http/wpt/mediarecorder/set-srcObject-MediaStream-Blob.html [ Crash ]
Philippe Normand
Comment 3
2022-06-29 08:53:03 PDT
Looks like that was fixed.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug