LadybirdBrowser / ladybird

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

vk.com crashes in Ladybird #2759

Closed shlyakpavel closed 2 hours ago

shlyakpavel commented 7 hours ago

Summary

When I open vk.com (popular Russian social service, I have no account so cannot login to check anything), browser crashes. This seems to be a recent regression, as I previously checked that and it didn't crash. It might be a web page update or ladybird update that causes that.

Operating system

macOS

Steps to reproduce

  1. Open Ladybird
  2. Navigate to vk.com
  3. Wait

Expected behavior

It doesn't crash

Actual behavior

It crashes

URL for a reduced test case

vk.com

HTML/SVG/etc. source for a reduced test case

N/A

Log output and (if possible) backtrace

ninja: Entering directory `/Users/pavel/Develop/ladybird/Build/release'
[0/2] Re-checking globbed directories...
ninja: no work to do.
objc[24347]: Class WebSwapCGLLayer is implemented in both /System/Library/Frameworks/WebKit.framework/Versions/A/Frameworks/WebCore.framework/Versions/A/Frameworks/libANGLE-shared.dylib (0x2732f6bf8) and /Users/pavel/Develop/ladybird/Build/release/vcpkg_installed/arm64-osx/lib/liblibGLESv2_angle.dylib (0x1097541d0). One of the two will be used. Which one is undefined.
objc[24348]: Class WebSwapCGLLayer is implemented in both /System/Library/Frameworks/WebKit.framework/Versions/A/Frameworks/WebCore.framework/Versions/A/Frameworks/libANGLE-shared.dylib (0x2732f6bf8) and /Users/pavel/Develop/ladybird/Build/release/vcpkg_installed/arm64-osx/lib/liblibGLESv2_angle.dylib (0x1079b81d0). One of the two will be used. Which one is undefined.
objc[24350]: Class WebSwapCGLLayer is implemented in both /System/Library/Frameworks/WebKit.framework/Versions/A/Frameworks/WebCore.framework/Versions/A/Frameworks/libANGLE-shared.dylib (0x2732f6bf8) and /Users/pavel/Develop/ladybird/Build/release/vcpkg_installed/arm64-osx/lib/liblibGLESv2_angle.dylib (0x1092d41d0). One of the two will be used. Which one is undefined.
2024-12-04 20:04:09.949 Ladybird[24347:14369171] +[IMKClient subclass]: chose IMKClient_Modern
2024-12-04 20:04:10.020 Ladybird[24347:14369171] +[IMKInputSession subclass]: chose IMKInputSession_Modern
1017437.502 WebContent(24350): HTMLScriptElement: Refusing to run classic script because it has the nomodule attribute.
1017437.556 WebContent(24350): (STUBBED) Document::set_domain(domain='vk.com')
1017439.531 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017439.558 WebContent(24350): FIXME: Unimplemented IDL interface: 'HTMLElementPrototype.draggable'
1017439.731 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017439.733 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017439.733 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.143 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017440.155 WebContent(24350): (js log) "[0.013] " "common module enabled"
1017440.155 WebContent(24350): FIXME: Unimplemented IDL interface: 'HTMLMediaElementPrototype.playbackRate'
1017440.496 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017440.498 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.498 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.572 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017440.573 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.573 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.619 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017440.621 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.621 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.665 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017440.667 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.667 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.823 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017440.825 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.825 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.967 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017440.968 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017440.969 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017441.036 WebContent(24350): FIXME: Unimplemented Navigator.maxTouchPoints
1017441.038 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017441.038 WebContent(24350): Potential FIXME: Creating unknown generic element 'parsererror' in namespace 'http://www.mozilla.org/newlayout/xml/parsererror.xml'
1017441.083 WebContent(24350): FIXME: Unimplemented IDL interface: 'CanvasRenderingContext2DPrototype.globalCompositeOperation'
1017441.155 Ladybird(24347): WebContent process crashed! Last page loaded: https://vk.com/
1017441.155 Ladybird(24347): Consider raising an issue at https://github.com/LadybirdBrowser/ladybird/issues/new/choose
objc[24352]: Class WebSwapCGLLayer is implemented in both /System/Library/Frameworks/WebKit.framework/Versions/A/Frameworks/WebCore.framework/Versions/A/Frameworks/libANGLE-shared.dylib (0x2732f6bf8) and /Users/pavel/Develop/ladybird/Build/release/vcpkg_installed/arm64-osx/lib/liblibGLESv2_angle.dylib (0x107f5c1d0). One of the two will be used. Which one is undefined.

Screenshots or screen recordings

No response

Build flags or config settings

No response

Contribute a patch?

shlyakpavel commented 7 hours ago

@kalenikaliaksandr

Process 32443 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
    frame #0: 0x000000018251a600 libsystem_kernel.dylib`__pthread_kill + 8
libsystem_kernel.dylib`__pthread_kill:
->  0x18251a600 <+8>:  b.lo   0x18251a620    ; <+40>
    0x18251a604 <+12>: pacibsp
    0x18251a608 <+16>: stp    x29, x30, [sp, #-0x10]!
    0x18251a60c <+20>: mov    x29, sp
Target 0: (WebContent) stopped.
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x000000018251a600 libsystem_kernel.dylib`__pthread_kill + 8
    frame #1: 0x0000000182552f70 libsystem_pthread.dylib`pthread_kill + 288
    frame #2: 0x000000018245f99c libsystem_c.dylib`__abort + 136
    frame #3: 0x0000000182450e74 libsystem_c.dylib`__stack_chk_fail + 96
    frame #4: 0x0000000107379058 liblagom-web.0.0.0.dylib`::get_parameter() at NonnullOwnPtr.h:0:9 [opt]
    frame #5: 0x0000000107a3f7ac liblagom-web.0.0.0.dylib`::get_parameter() [inlined] operator() at WebGLRenderingContextPrototype.cpp:3696:36 [opt]
    frame #6: 0x0000000107a3f7a0 liblagom-web.0.0.0.dylib`::get_parameter() [inlined] throw_dom_exception_if_needed<(lambda at /Users/pavel/Develop/ladybird/Build/release/Lagom/Libraries/LibWeb/Bindings/WebGLRenderingContextPrototype.cpp:3696:36), JS::Value, JS::Value> at ExceptionOrUtils.h:110:16 [opt]
    frame #7: 0x0000000107a3f7a0 liblagom-web.0.0.0.dylib`::get_parameter() at WebGLRenderingContextPrototype.cpp:3696:36 [opt]
    frame #8: 0x000000010591292c liblagom-js.0.0.0.dylib`::operator()() at Function.h:120:25 [opt]
    frame #9: 0x0000000105ad8238 liblagom-js.0.0.0.dylib`::internal_call() at NativeFunction.cpp:166:19 [opt]
    frame #10: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #11: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #12: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #13: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #14: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #15: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #16: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #17: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #18: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #19: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #20: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #21: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #22: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #23: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #24: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #25: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #26: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #27: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #28: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #29: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #30: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #31: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #32: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #33: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #34: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #35: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #36: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #37: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #38: 0x0000000105af9024 liblagom-js.0.0.0.dylib`::construct() [inlined] call<GC::Ref<JS::FunctionObject> &, GC::Ref<JS::FunctionObject> &> at AbstractOperations.h:115:16 [opt]
    frame #39: 0x0000000105af8fe0 liblagom-js.0.0.0.dylib`::construct() at PromiseConstructor.cpp:280:23 [opt]
    frame #40: 0x0000000105ad8460 liblagom-js.0.0.0.dylib`::internal_construct() at NativeFunction.cpp:225:19 [opt]
    frame #41: 0x000000010597f5f4 liblagom-js.0.0.0.dylib`::perform_call() [inlined] construct at AbstractOperations.h:136:12 [opt]
    frame #42: 0x000000010597f5dc liblagom-js.0.0.0.dylib`::perform_call() at Interpreter.cpp:1246:24 [opt]
    frame #43: 0x000000010595bb2c liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2598:28 [opt]
    frame #44: 0x000000010595ba84 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:577:13 [opt]
    frame #45: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #46: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #47: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #48: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #49: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #50: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #51: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #52: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #53: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #54: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #55: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #56: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #57: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #58: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #59: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #60: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #61: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #62: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #63: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #64: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #65: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #66: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #67: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #68: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #69: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #70: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #71: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #72: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #73: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #74: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #75: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #76: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #77: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #78: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #79: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #80: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #81: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #82: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #83: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #84: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #85: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #86: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #87: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #88: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #89: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #90: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #91: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #92: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #93: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #94: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #95: 0x0000000105a56670 liblagom-js.0.0.0.dylib`::ordinary_call_evaluate_body() at ECMAScriptFunctionObject.cpp:819:55 [opt]
    frame #96: 0x0000000105a55db4 liblagom-js.0.0.0.dylib`::internal_call() at ECMAScriptFunctionObject.cpp:421:19 [opt]
    frame #97: 0x000000010595b5f0 liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] call at AbstractOperations.h:101:12 [opt]
    frame #98: 0x000000010595b5dc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] perform_call at Interpreter.cpp:1244:24 [opt]
    frame #99: 0x000000010595b5cc liblagom-js.0.0.0.dylib`::run_bytecode() [inlined] execute_impl at Interpreter.cpp:2585:28 [opt]
    frame #100: 0x000000010595b530 liblagom-js.0.0.0.dylib`::run_bytecode() at Interpreter.cpp:575:13 [opt]
    frame #101: 0x00000001059590a4 liblagom-js.0.0.0.dylib`::run_executable() at Interpreter.cpp:739:5 [opt]
    frame #102: 0x0000000105c11f08 liblagom-js.0.0.0.dylib`::execute_module() at SourceTextModule.cpp:723:73 [opt]
    frame #103: 0x000000010599d9d4 liblagom-js.0.0.0.dylib`::inner_module_evaluation() at CyclicModule.cpp:524:9 [opt]
    frame #104: 0x000000010599d350 liblagom-js.0.0.0.dylib`::evaluate() at CyclicModule.cpp:362:19 [opt]
    frame #105: 0x0000000107112004 liblagom-web.0.0.0.dylib`::run() at ModuleScript.cpp:111:51 [opt]
    frame #106: 0x000000010708c8f4 liblagom-web.0.0.0.dylib`::execute_script() at HTMLScriptElement.cpp:144:85 [opt]
    frame #107: 0x00000001070d23bc liblagom-web.0.0.0.dylib`::the_end() at HTMLParser.cpp:307:75 [opt]
    frame #108: 0x00000001070d213c liblagom-web.0.0.0.dylib`::run() at HTMLParser.cpp:242:5 [opt]
    frame #109: 0x0000000106f299ec liblagom-web.0.0.0.dylib`::call() [inlined] operator() at DocumentLoading.cpp:98:25 [opt]
    frame #110: 0x0000000106f29994 liblagom-web.0.0.0.dylib`::call() at Function.h:187:20 [opt]
    frame #111: 0x0000000106d42144 liblagom-web.0.0.0.dylib`::operator()() at Function.h:120:25 [opt]
    frame #112: 0x0000000105474064 liblagom-core.0.0.0.dylib`::operator()() at Function.h:120:25 [opt]
    frame #113: 0x0000000105485ad4 liblagom-core.0.0.0.dylib`::process() at ThreadEventQueue.cpp:118:13 [opt]
    frame #114: 0x0000000105487db4 liblagom-core.0.0.0.dylib`::exec() [inlined] pump at EventLoopImplementationUnix.cpp:324:40 [opt]
    frame #115: 0x0000000105487da0 liblagom-core.0.0.0.dylib`::exec() at EventLoopImplementationUnix.cpp:316:9 [opt]
    frame #116: 0x000000010547111c liblagom-core.0.0.0.dylib`::exec() at EventLoop.cpp:88:20 [opt]
    frame #117: 0x0000000104eda5d0 WebContent`::serenity_main() at main.cpp:208:23 [opt]
    frame #118: 0x0000000104f76968 WebContent`main at Main.cpp:39:19 [opt]
    frame #119: 0x00000001821d0274 dyld`start + 2840