Open gmuller-dev opened 1 week ago
Confirmed. Also breaks on linux with Qt chrome.
Log from a debug build:
1492607.319 WebContent(2828125): Unhandled JavaScript exception: [Error] Error creating WebGL context.
1492607.319 WebContent(2828125): at Error
at rR (https://github.githubassets.com/assets/vendors-node_modules_three_build_three_module_js-5d880871cb6c.js:186:109582)
at WebGL1Renderer (https://github.githubassets.com/assets/vendors-node_modules_three_build_three_module_js-5d880871cb6c.js:186:131014)
at init (https://github.githubassets.com/assets/landing-pages-b5a5e2626460.js:606:51527)
at Artwork (https://github.githubassets.com/assets/landing-pages-b5a5e2626460.js:1107:10402)
at https://github.githubassets.com/assets/landing-pages-b5a5e2626460.js:1107:11614
at oD (https://github.githubassets.com/assets/react-lib-7b7b5264f6c1.js:25:84059)
at uO (https://github.githubassets.com/assets/react-lib-7b7b5264f6c1.js:25:113104)
at uw (https://github.githubassets.com/assets/react-lib-7b7b5264f6c1.js:25:93815)
at x (https://github.githubassets.com/assets/react-lib-7b7b5264f6c1.js:33:1365)
at R (https://github.githubassets.com/assets/react-lib-7b7b5264f6c1.js:33:1895)
at <unknown>
at <unknown>
at <unknown>
1492607.750 WebContent(2828125): MixedContent: Blocked 'about:newtab' (request)
VERIFICATION FAILED: may_defer || !called_from_inside_function at /home/andrew/ladybird-org/ladybird-browser/AK/Function.h:230
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-ak.so.0(ak_verification_failed+0x8a) [0x7aa7876dde13]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-core.so.0(+0x33bc2) [0x7aa7877c6bc2]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-core.so.0 Core::Notifier::~Notifier() 0x2e) [0x7aa7877d5c74]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-core.so.0 Core::Notifier::~Notifier() 0xd) [0x7aa7877d5c8b]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-ipc.so.0(+0x137e7) [0x7aa7897ef7e7]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-ipc.so.0(+0x1ee37) [0x7aa7897fae37]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-ipc.so.0(+0x1ee71) [0x7aa7897fae71]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-ipc.so.0 IPC::TransportSocket::~TransportSocket() 0x1f) [0x7aa7897fa1bf]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-web.so.0 Web::HTML::MessagePort::disentangle() 0x5a) [0x7aa788d01a1a]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-web.so.0(+0xb5b420) [0x7aa788b5b420]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-web.so.0(+0xb5b433) [0x7aa788b5b433]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-web.so.0(+0xd048be) [0x7aa788d048be]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-web.so.0 Web::HTML::MessagePort::for_each_message_port(AK::Function<void (Web::HTML::MessagePort&)>) 0x4c) [0x7aa788d01b1a]
/home/andrew/ladybird-org/ladybird-browser/Build/debug/lib/liblagom-web.so.0 Web::DOM::Document::destroy() 0x6c) [0x7aa788b682a0]
full gdb backtrace:
https://gist.github.com/ADKaster/a9bae8b9ebcb038e2d2ff94358af00e8
It looks like we are destroying a document and a message port it owns in a way that is not kosher.
At the very bottom of the event loop stack, we start the whole thing off by receiving a message from a message port (presumably a worker, or iframe?)
#199 0x00007aa788baf3b8 in Web::WebIDL::call_user_object_operation<Web::DOM::Event*&> (callback=..., operation_name=..., this_argument=...) at /home/andrew/ladybird-org/ladybird-browser/Userland/Libraries/LibWeb/WebIDL/AbstractOperations.h:33
#200 0x00007aa788bae472 in Web::DOM::EventDispatcher::inner_invoke (event=..., listeners=..., phase=Web::DOM::Event::BubblingPhase, invocation_target_in_shadow_tree=false) at /home/andrew/ladybird-org/ladybird-browser/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp:91
#201 0x00007aa788bae678 in Web::DOM::EventDispatcher::invoke (struct_=..., event=..., phase=<optimized out>) at /home/andrew/ladybird-org/ladybird-browser/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp:155
#202 0x00007aa788baf02f in Web::DOM::EventDispatcher::dispatch (target=..., target@entry=..., event=..., legacy_target_override=legacy_target_override@entry=false) at /home/andrew/ladybird-org/ladybird-browser/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp:372
#203 0x00007aa788bafb6a in Web::DOM::EventTarget::dispatch_event (this=this@entry=0x7aa759d2d040, event=...) at /home/andrew/ladybird-org/ladybird-browser/Userland/Libraries/LibJS/Heap/GCPtr.h:22
#204 0x00007aa788d02de5 in Web::HTML::MessagePort::post_message_task_steps (this=<optimized out>, serialize_with_transfer_result=...) at /home/andrew/ladybird-org/ladybird-browser/Userland/Libraries/LibJS/Heap/GCPtr.h:71
#205 0x00007aa788d034aa in Web::HTML::MessagePort::parse_message (this=0x7aa759d2d040) at /home/andrew/ladybird-org/ladybird-browser/Userland/Libraries/LibWeb/HTML/MessagePort.cpp:327
#206 0x00007aa788d03d96 in Web::HTML::MessagePort::read_from_transport (this=0x7aa759d2d040) at /home/andrew/ladybird-org/ladybird-browser/Userland/Libraries/LibWeb/HTML/MessagePort.cpp:352
While handling the event for that, HTMLMediaElement::select_resource spins the Web Event Loop, which accepts the user triggered navigate backwards event and tries to destroy the document, spinning even more event loop stuff to make it happen.
Actually maybe it's not that html issue. When you click the back button we call void TraversableNavigable::traverse_the_history_by_delta(int delta, Optional<DOM::Document&> source_document)
from Page.cpp:89
@kalenikaliaksandr Any thoughts on why that might be hitting a MixedContent::should_fetching_request_be_blocked_as_mixed_content
error in fetch() ?
Summary
When i visited github.com javascript error started to be logged in the terminal i then clicked on the back button that would have send me to about:newtab. Ladybird tab then froze it was not possible navigate anywhere from that tab. From another website like ladybird.org I have the message in the "Failed to load about:newtab".
Operating system
macOS
Steps to reproduce
1.Launch ladybird 2.Go to github.com 3.Press the back button
Expected behavior
the page should be navigated to about:newtab
Actual behavior
Ladybird froze
URL for a reduced test case
N/A
HTML/SVG/etc. source for a reduced test case
Log output and (if possible) backtrace
Screenshots or screen recordings
Build flags or config settings
using default build instruction without brew clang or qt
Contribute a patch?