LadybirdBrowser / ladybird

Truly independent web browser
https://ladybird.org
BSD 2-Clause "Simplified" License
12.17k stars 482 forks source link

reliable crash testing privacy hooks at https://coveryourtracks.eff.org/ #338

Open pfrench42 opened 1 week ago

pfrench42 commented 1 week ago

navigated here to run a batch of privacy tests:

254630.427 WebContent(794842): Web::EventHandler: Clicking on a link to https://coveryourtracks.eff.org/kcarter?aat=1
VERIFICATION FAILED: m_ptr at /home/me/proj/github/ladybird/Userland/Libraries/LibJS/Heap/GCPtr.h:168
utf-4096 commented 1 week ago

Was able to reproduce (although it took a few tries). On commit e76ad9492e

5172.002 WebContent(4151): Process {/opt/ladybird/Build/ladybird/libexec/WebContent} with pid 4151 is sleeping, waiting for debugger.
5197.288 WebContent(4151): Web::EventHandler: Clicking on a link to https://coveryourtracks.eff.org/kcarter-nojs
5197.926 WebContent(4151): ResourceLoader: Failed load of: "https://coveryourtracks.eff.org/js/?idsite=40&rec=1&urlref=&action_name=Cover%20Your%20Tracks", Error: Load failed: 404, Duration: 277ms
5198.266 WebContent(4151): ImageDecoderClient: Failed to decode image with ID 1: Decoding failed: Could not find suitable image decoder plugin for data
VERIFICATION FAILED: m_ptr at /opt/ladybird/Userland/Libraries/LibJS/Heap/GCPtr.h:168

GDB backtrace:

#0  ak_verification_failed () at /opt/ladybird/AK/Assertions.cpp:102
#1  0x00007feb65aa7af0 in JS::GCPtr<Web::DOM::Document>::operator-> () at /opt/ladybird/Userland/Libraries/LibJS/Heap/GCPtr.h:168
#2  operator() () at /opt/ladybird/Userland/Libraries/LibWeb/DOM/Document.cpp:3036
#3  for_each_shadow_including_inclusive_descendant<Web::DOM::Document::descendant_navigables()::<lambda(Web::DOM::Node&)> >(void) ()
    at /opt/ladybird/Userland/Libraries/LibWeb/DOM/ShadowRoot.h:103
#4  0x00007feb65aa7a77 in for_each_shadow_including_inclusive_descendant<Web::DOM::Document::descendant_navigables()::<lambda(Web::DOM::Node&)> >(void) ()
    at /opt/ladybird/Userland/Libraries/LibWeb/DOM/ShadowRoot.h:112
#5  0x00007feb65aa7a77 in for_each_shadow_including_inclusive_descendant<Web::DOM::Document::descendant_navigables()::<lambda(Web::DOM::Node&)> >(void) ()
    at /opt/ladybird/Userland/Libraries/LibWeb/DOM/ShadowRoot.h:112
#6  0x00007feb65aa7a77 in for_each_shadow_including_inclusive_descendant<Web::DOM::Document::descendant_navigables()::<lambda(Web::DOM::Node&)> >(void) ()
    at /opt/ladybird/Userland/Libraries/LibWeb/DOM/ShadowRoot.h:112
#7  0x00007feb65aa7c47 in for_each_shadow_including_inclusive_descendant<Web::DOM::Document::descendant_navigables()::<lambda(Web::DOM::Node&)> > ()
    at /opt/ladybird/Userland/Libraries/LibWeb/DOM/ShadowRoot.h:112
#8  for_each_shadow_including_descendant<Web::DOM::Document::descendant_navigables()::<lambda(Web::DOM::Node&)> >(void) () at /opt/ladybird/Userland/Libraries/LibWeb/DOM/ShadowRoot.h:128
#9  0x00007feb65aa7d4b in Web::DOM::Document::descendant_navigables () at /opt/ladybird/Userland/Libraries/LibWeb/DOM/Document.cpp:3028
#10 Web::DOM::Document::descendant_navigables () at /opt/ladybird/Userland/Libraries/LibWeb/DOM/Document.cpp:3047
#11 Web::DOM::Document::anything_is_delaying_the_load_event () at /opt/ladybird/Userland/Libraries/LibWeb/DOM/Document.cpp:2829
#12 0x00007feb65cdb020 in operator() () at /opt/ladybird/Userland/Libraries/LibWeb/HTML/Parser/HTMLParser.cpp:321
#13 call () at /opt/ladybird/Userland/Libraries/LibJS/SafeFunction.h:133
#14 0x00007feb65becf81 in JS::SafeFunction<bool ()>::operator()() const () at /opt/ladybird/Userland/Libraries/LibJS/SafeFunction.h:85
#15 operator() () at /opt/ladybird/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.cpp:86
#16 call () at /opt/ladybird/Userland/Libraries/LibJS/SafeFunction.h:133
#17 0x00007feb65eb3899 in JS::SafeFunction<bool ()>::operator()() const () at /opt/ladybird/Userland/Libraries/LibJS/SafeFunction.h:85
#18 AK::Function<bool ()>::CallableWrapper<JS::SafeFunction<bool ()> >::call() () at /opt/ladybird/AK/Function.h:187
#19 0x00007feb673c6547 in AK::Function<bool ()>::operator()() const () at /opt/ladybird/AK/Function.h:120
#20 Core::EventLoop::spin_until(AK::Function<bool ()>) () at /opt/ladybird/Userland/Libraries/LibCore/EventLoop.cpp:94
#21 0x00007feb65eb2c27 in Web::Platform::EventLoopPluginSerenity::spin_until(JS::SafeFunction<bool ()>) ()
    at /opt/ladybird/Userland/Libraries/LibWeb/Platform/EventLoopPluginSerenity.cpp:19
#22 0x00007feb65beca25 in Web::HTML::EventLoop::spin_until(JS::SafeFunction<bool ()>) () at /opt/ladybird/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.cpp:85
#23 0x00007feb65cf7939 in Web::HTML::HTMLParser::the_end () at /opt/ladybird/Userland/Libraries/LibWeb/HTML/Parser/HTMLParser.cpp:320
#24 0x00007feb65cf7ed1 in Web::HTML::HTMLParser::run () at /opt/ladybird/Userland/Libraries/LibWeb/HTML/Parser/HTMLParser.cpp:227
#25 0x00007feb65eb3999 in JS::SafeFunction<void ()>::operator()() const () at /opt/ladybird/Userland/Libraries/LibJS/SafeFunction.h:85
#26 AK::Function<void ()>::CallableWrapper<JS::SafeFunction<void ()> >::call() () at /opt/ladybird/AK/Function.h:187
#27 0x00007feb673ea55a in AK::Function<void ()>::operator()() const () at /opt/ladybird/AK/Function.h:120
#28 Core::ThreadEventQueue::process () at /opt/ladybird/Userland/Libraries/LibCore/ThreadEventQueue.cpp:118
#29 0x0000558c987b80dd in Ladybird::EventLoopManagerQt::event_target_received_event () at /opt/ladybird/Ladybird/Qt/EventLoopImplementationQt.cpp:325
#30 0x0000558c987bb68e in Ladybird::EventLoopImplementationQtEventTarget::event () at /opt/ladybird/Ladybird/Qt/EventLoopImplementationQtEventTarget.cpp:13
#31 0x00007feb675626af in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt6Core.so.6
#32 0x00007feb67565e67 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt6Core.so.6
#33 0x00007feb677c1aa3 in ?? () from /usr/lib/libQt6Core.so.6
#34 0x00007feb61110cc4 in ?? () from /usr/lib/libglib-2.0.so.0
#35 0x00007feb61113d47 in ?? () from /usr/lib/libglib-2.0.so.0
#36 0x00007feb6111433c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#37 0x00007feb677c133c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt6Core.so.6
#38 0x00007feb6756e173 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt6Core.so.6
#39 0x00007feb673c66d6 in Core::EventLoop::exec () at /opt/ladybird/Userland/Libraries/LibCore/EventLoop.cpp:88
#40 0x0000558c987c7cfa in serenity_main () at /opt/ladybird/Ladybird/WebContent/main.cpp:196
#41 0x0000558c98895d82 in main () at /opt/ladybird/Userland/Libraries/LibMain/Main.cpp:43