Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(Language server?) crash(es) in Godot with an empty project with C# code (v3.4.4) #61451

Open
XutaxKamay opened this issue May 27, 2022 · 2 comments

Comments

@XutaxKamay
Copy link
Contributor

XutaxKamay commented May 27, 2022

Godot version

3.4.4-stable

System information

Gentoo hardened

Issue description

So far, I love Godot very much from how little I used it (even if I seem to always get a problem sadly in anything I touch. Heh)

I wanted to try out C# with cocvim using the language server that Godot provides at 127.0.0.1;6008. But I seem to get a crash with some strange resource/source file cache or something being free'd when it should not.

Here is the debug crash information:

OpenGL ES 3.0 Renderer: NVIDIA GeForce GTX 980M/PCIe/SSE2                                        ░▒▓ 98%   144.4 Mbps  ▓▒░─╯
OpenGL ES Batching: ON
 
Mono: Log file is: '/home/kamay/.local/share/godot/mono/mono_logs/2022-05-27_02.19.38_23692.log'

=================================================================
        Native Crash Reporting
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

=================================================================
        Native stacktrace:
=================================================================
        0x78faa2539301 - /usr/lib64/libmonosgen-2.0.so.1 : 
        0x78faa2539699 - /usr/lib64/libmonosgen-2.0.so.1 : 
        0x78faa24c83b1 - /usr/lib64/libmonosgen-2.0.so.1 : 
        0x78faa25329d5 - /usr/lib64/libmonosgen-2.0.so.1 : 
        0x1818b41 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN7CowDataIwE4_refERKS0_
        0x1818abd - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN6StringaSERKS_
        0x1903ee6 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN8GDScript16load_source_codeERK6String
        0x1a0fadb - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN20GDScriptTextDocument19sync_script_contentERK6StringS2_
        0x1a0c2be - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN20GDScriptTextDocument7didOpenERK7Variant
        0x1a076ea - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN11MethodBind1IRK7VariantE4callEP6ObjectPPS1_iRNS0_9CallErrorE
        0x484280e - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN6Object4callERK10StringNamePPK7VariantiRNS3_9CallErrorE
        0x48420f2 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN6Object5callvERK10StringNameRK5Array
        0x1a4168e - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN7JSONRPC14process_actionERK7Variantb
        0x1a41edc - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN7JSONRPC14process_stringERK6String
        0x19f9827 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN24GDScriptLanguageProtocol15process_messageERK6String
        0x19f9288 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN24GDScriptLanguageProtocol6LSPeer11handle_dataEv
        0x19fac35 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN24GDScriptLanguageProtocol4pollEv
        0x1a09541 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN22GDScriptLanguageServer13_notificationEi
        0x1a0a68c - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN22GDScriptLanguageServer14_notificationvEib
        0x4842933 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN6Object12notificationEib
        0x38a8082 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN9SceneTree19_notify_group_pauseERK10StringNamei
        0x38a5bb3 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN9SceneTree4idleEf
        0x18678a6 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN4Main9iterationEv
        0x1829733 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _ZN6OS_X113runEv
        0x181649f - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : main
        0x78faa222f31c - /lib64/libc.so.6 : 
        0x78faa222f3cc - /lib64/libc.so.6 : __libc_start_main
        0x18162b1 - /media/sda1/git/godot/bin/godot.x11.tools.64.mono : _start

=================================================================
        Telemetry Dumper:
=================================================================
Pkilling 0x133017500636736x from 0x133017864148992x
Pkilling 0x133017502737984x from 0x133017864148992x
Could not exec mono-hang-watchdog, expected on path '/media/sda1/git/godot/bin/GodotSharp/Mono/etc/../bin/mono-hang-watchdog' (errno 2)
Entering thread summarizer pause from 0x133017864148992x
Finished thread summarizer pause from 0x133017864148992x.
Failed to create breadcrumb file (null)/crash_hash_0x0

Waiting for dumping threads to resume

=================================================================
        External Debugger Dump:
=================================================================
[New LWP 23693]
[New LWP 23697]
[New LWP 23712]
[New LWP 23713]
[New LWP 23714]
[New LWP 23717]
[New LWP 23718]
[New LWP 23720]
[New LWP 23721]
[New LWP 23722]
[New LWP 23723]
[New LWP 23724]
[New LWP 23726]
:q[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
0x000078faa22dc3e7 in wait4 () from /lib64/libc.so.6
  Id   Target Id                                           Frame 
* 1    Thread 0x78faa28a9800 (LWP 23692) "godot.x11.tools" 0x000078faa22dc3e7 in wait4 () from /lib64/libc.so.6
  2    Thread 0x78faa197e640 (LWP 23693) "godot.x11.tools" 0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6
  3    Thread 0x78fa9dbff640 (LWP 23697) "godot.x11.tools" 0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6
  4    Thread 0x78fa948e1640 (LWP 23712) "godot.x11.tools" 0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
  5    Thread 0x78fa8ffff640 (LWP 23713) "godot.x11.tools" 0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
  6    Thread 0x78fa8f7fe640 (LWP 23714) "godot.x11.tools" 0x000078faa230691d in select () from /lib64/libc.so.6
  7    Thread 0x78fa8e7ff640 (LWP 23717) "SGen worker"     0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6
  8    Thread 0x78fa8cffe640 (LWP 23718) "Finalizer"       0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6
  9    Thread 0x78fa74df1640 (LWP 23720) "godot.x11.tools" 0x000078faa230037c in read () from /lib64/libc.so.6
  10   Thread 0x78fa745f0640 (LWP 23721) "godot.x11.tools" 0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
  11   Thread 0x78fa73def640 (LWP 23722) "godot.x11.tools" 0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
  12   Thread 0x78fa735ee640 (LWP 23723) "godot.x11.tools" 0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
  13   Thread 0x78fa8cdfd640 (LWP 23724) "Thread Pool I/O" 0x000078faa230430f in poll () from /lib64/libc.so.6
  14   Thread 0x78fa7dbfe640 (LWP 23726) "godot.x11.tools" 0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6

Thread 14 (Thread 0x78fa7dbfe640 (LWP 23726) "godot.x11.tools"):
#0  0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6
#1  0x000078faa228d650 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x0000000004d0b6ec in std::condition_variable::wait(std::unique_lock<std::mutex>&) ()
#3  0x0000000002f0cfbf in Semaphore::wait (this=0xbd7b218) at ./core/os/semaphore.h:58
#4  EditorResourcePreview::_thread (this=0xbd7afe0) at editor/editor_resource_preview.cpp:217
#5  0x0000000002f0bc8c in EditorResourcePreview::_thread_func (ud=0xbd7afe0) at editor/editor_resource_preview.cpp:101
#6  0x0000000004993b65 in Thread::callback (p_self=0xbd7b278, p_settings=..., p_callback=0x2f0bc6c <EditorResourcePreview::_thread_func(void*)>, p_userdata=0xbd7afe0) at core/os/thread.cpp:78
#7  0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0x1a8b01f8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#8  0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0x1a8b01f8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#9  0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0x1a8b01d8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#10 0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0x1a8b01d8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#11 0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0x1a8b01d0) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#12 0x0000000004d7bcf0 in execute_native_thread_routine ()
#13 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#14 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 13 (Thread 0x78fa8cdfd640 (LWP 23724) "Thread Pool I/O"):
#0  0x000078faa230430f in poll () from /lib64/libc.so.6
#1  0x000078faa271d497 in poll (__timeout=<optimized out>, __nfds=<optimized out>, __fds=<optimized out>) at /usr/include/bits/poll2.h:39
#2  0x000078faa26766b7 in poll_event_wait (callback=0x78faa2676db0 <wait_callback>, user_data=0x78fa6c0025f0) at /var/tmp/portage/dev-lang/mono-6.12.0.122/work/mono-6.12.0.122-abi_x86_64.amd64/mono/metadata/threadpool-io-poll.c:153
#3  0x000078faa2677681 in selector_thread (data=data@entry=0x0) at threadpool-io.c:460
#4  0x000078faa266fb66 in start_wrapper_internal (stack_ptr=0x78fa8cdfe000, start_info=0x0) at threads.c:1233
#5  start_wrapper (data=0xfbc0bc0) at threads.c:1308
#6  0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#7  0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 12 (Thread 0x78fa735ee640 (LWP 23723) "godot.x11.tools"):
#0  0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
#1  0x000078faa22dc623 in nanosleep () from /lib64/libc.so.6
#2  0x0000000002b92416 in OS_Unix::delay_usec (this=0x7ffce743dbc0, p_usec=100000) at drivers/unix/os_unix.cpp:243
#3  0x000000000315fd1f in EditorFileServer::_thread_start (s=0xbca91b0) at editor/fileserver/editor_file_server.cpp:294
#4  0x0000000004993b65 in Thread::callback (p_self=0xbca92f0, p_settings=..., p_callback=0x315f9d6 <EditorFileServer::_thread_start(void*)>, p_userdata=0xbca91b0) at core/os/thread.cpp:78
#5  0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0x1214ba38: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#6  0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0x1214ba38: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#7  0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0x1214ba18) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#8  0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0x1214ba18) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#9  0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0x1214ba10) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#10 0x0000000004d7bcf0 in execute_native_thread_routine ()
#11 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#12 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 11 (Thread 0x78fa73def640 (LWP 23722) "godot.x11.tools"):
#0  0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
#1  0x000078faa22dc623 in nanosleep () from /lib64/libc.so.6
#2  0x0000000002b92416 in OS_Unix::delay_usec (this=0x7ffce743dbc0, p_usec=1000) at drivers/unix/os_unix.cpp:243
#3  0x00000000035e6fbd in EditorExportPlatformJavaScript::_server_thread_poll (data=0x12b15b70) at platform/javascript/export/export.cpp:966
#4  0x0000000004993b65 in Thread::callback (p_self=0x12b15cd8, p_settings=..., p_callback=0x35e6f78 <EditorExportPlatformJavaScript::_server_thread_poll(void*)>, p_userdata=0x12b15b70) at core/os/thread.cpp:78
#5  0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0x102955d8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#6  0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0x102955d8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#7  0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0x102955b8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#8  0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0x102955b8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#9  0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0x102955b0) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#10 0x0000000004d7bcf0 in execute_native_thread_routine ()
#11 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#12 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 10 (Thread 0x78fa745f0640 (LWP 23721) "godot.x11.tools"):
#0  0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
#1  0x000078faa22dc623 in nanosleep () from /lib64/libc.so.6
#2  0x0000000002b92416 in OS_Unix::delay_usec (this=0x7ffce743dbc0, p_usec=300000) at drivers/unix/os_unix.cpp:243
#3  0x00000000035d49c3 in EditorExportPlatformIOS::_check_for_changes_poll_thread (ud=0x12b15430) at platform/iphone/export/export.cpp:171
#4  0x0000000004993b65 in Thread::callback (p_self=0x12b15558, p_settings=..., p_callback=0x35d4793 <EditorExportPlatformIOS::_check_for_changes_poll_thread(void*)>, p_userdata=0x12b15430) at core/os/thread.cpp:78
#5  0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0x136c5318: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#6  0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0x136c5318: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#7  0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0x136c52f8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#8  0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0x136c52f8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#9  0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0x136c52f0) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#10 0x0000000004d7bcf0 in execute_native_thread_routine ()
#11 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#12 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 9 (Thread 0x78fa74df1640 (LWP 23720) "godot.x11.tools"):
#0  0x000078faa230037c in read () from /lib64/libc.so.6
#1  0x000078faa22870bc in __GI__IO_file_underflow () from /lib64/libc.so.6
#2  0x000078faa22861f0 in __GI__IO_file_xsgetn () from /lib64/libc.so.6
#3  0x000078faa227b5e4 in fread () from /lib64/libc.so.6
#4  0x0000000002c9cc15 in FileAccessUnix::get_buffer (this=0x78fa78000ba0, p_dst=0x78fa74df0920 "Battery\n", p_length=63) at drivers/unix/file_access_unix.cpp:246
#5  0x000000000183b1e6 in PowerX11::read_power_file (this=0xacdde80, base=0x4da0a15 "/sys/class/power_supply", node=0x78fa780011f0 "BAT1", key=0x4da0a3a "present", buf=0x78fa74df0920 "Battery\n", buflen=64) at platform/x11/power_x11.cpp:85
#6  0x000000000183cc0e in PowerX11::GetPowerInfo_Linux_sys_class_power_supply (this=0xacdde80) at platform/x11/power_x11.cpp:472
#7  0x000000000183d37e in PowerX11::UpdatePowerInfo (this=0xacdde80) at platform/x11/power_x11.cpp:528
#8  0x000000000183d456 in PowerX11::get_power_state (this=0xacdde80) at platform/x11/power_x11.cpp:550
#9  0x0000000001829b01 in OS_X11::get_power_state (this=0x7ffce743dbc0) at platform/x11/os_x11.cpp:3713
#10 0x0000000003585ee9 in EditorExportPlatformAndroid::_check_for_changes_poll_thread (ud=0x1354be60) at platform/android/export/export_plugin.cpp:376
#11 0x0000000004993b65 in Thread::callback (p_self=0x1354c010, p_settings=..., p_callback=0x3584536 <EditorExportPlatformAndroid::_check_for_changes_poll_thread(void*)>, p_userdata=0x1354be60) at core/os/thread.cpp:78
#12 0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0x104b3d78: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#13 0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0x104b3d78: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#14 0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0x104b3d58) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#15 0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0x104b3d58) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#16 0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0x104b3d50) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#17 0x0000000004d7bcf0 in execute_native_thread_routine ()
#18 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#19 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 8 (Thread 0x78fa8cffe640 (LWP 23718) "Finalizer"):
#0  0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6
#1  0x000078faa2296088 in __new_sem_wait_slow64.constprop.0 () from /lib64/libc.so.6
#2  0x000078faa26b7ba8 in mono_os_sem_wait (flags=MONO_SEM_FLAGS_ALERTABLE, sem=0x78faa2897c80 <finalizer_sem>) at ../../mono/utils/mono-os-semaphore.h:203
#3  mono_coop_sem_wait (flags=MONO_SEM_FLAGS_ALERTABLE, sem=0x78faa2897c80 <finalizer_sem>) at ../../mono/utils/mono-coop-semaphore.h:41
#4  finalizer_thread (unused=unused@entry=0x0) at gc.c:965
#5  0x000078faa266fb66 in start_wrapper_internal (stack_ptr=0x78fa8cfff000, start_info=0x0) at threads.c:1233
#6  start_wrapper (data=0xb578630) at threads.c:1308
#7  0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#8  0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 7 (Thread 0x78fa8e7ff640 (LWP 23717) "SGen worker"):
#0  0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6
#1  0x000078faa228d650 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x000078faa2708dc2 in mono_os_cond_wait (mutex=0x78faa28a69e0 <lock>, cond=0x78faa28a69a0 <work_cond>) at ../../mono/utils/mono-os-mutex.h:219
#3  get_work (job=<synthetic pointer>, do_idle=<synthetic pointer>, work_context=<synthetic pointer>, worker_index=0) at sgen-thread-pool.c:165
#4  thread_func (data=<optimized out>) at sgen-thread-pool.c:196
#5  0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#6  0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 6 (Thread 0x78fa8f7fe640 (LWP 23714) "godot.x11.tools"):
#0  0x000078faa230691d in select () from /lib64/libc.so.6
#1  0x00000000018225a2 in OS_X11::_wait_for_events (this=0x7ffce743dbc0) at platform/x11/os_x11.cpp:2291
#2  0x00000000018226cc in OS_X11::_poll_events (this=0x7ffce743dbc0) at platform/x11/os_x11.cpp:2307
#3  0x0000000001822474 in OS_X11::_poll_events_thread (ud=0x7ffce743dbc0) at platform/x11/os_x11.cpp:2269
#4  0x0000000004993b65 in Thread::callback (p_self=0x7ffce743de90, p_settings=..., p_callback=0x1822454 <OS_X11::_poll_events_thread(void*)>, p_userdata=0x7ffce743dbc0) at core/os/thread.cpp:78
#5  0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0xacf13d8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#6  0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0xacf13d8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#7  0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0xacf13b8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#8  0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0xacf13b8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#9  0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0xacf13b0) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#10 0x0000000004d7bcf0 in execute_native_thread_routine ()
#11 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#12 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 5 (Thread 0x78fa8ffff640 (LWP 23713) "godot.x11.tools"):
#0  0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
#1  0x000078faa22dc623 in nanosleep () from /lib64/libc.so.6
#2  0x000078faa23071e5 in usleep () from /lib64/libc.so.6
#3  0x00000000018384e3 in JoypadLinux::monitor_joypads (this=0xacdf970, p_udev=0x78fa88000b60) at platform/x11/joypad_linux.cpp:205
#4  0x0000000001837f00 in JoypadLinux::run_joypad_thread (this=0xacdf970) at platform/x11/joypad_linux.cpp:121
#5  0x0000000001837e65 in JoypadLinux::joy_thread_func (p_user=0xacdf970) at platform/x11/joypad_linux.cpp:107
#6  0x0000000004993b65 in Thread::callback (p_self=0xacdf9a0, p_settings=..., p_callback=0x1837e3e <JoypadLinux::joy_thread_func(void*)>, p_userdata=0xacdf970) at core/os/thread.cpp:78
#7  0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0xacdf728: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#8  0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0xacdf728: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#9  0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0xacdf708) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#10 0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0xacdf708) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#11 0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0xacdf700) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#12 0x0000000004d7bcf0 in execute_native_thread_routine ()
#13 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#14 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 4 (Thread 0x78fa948e1640 (LWP 23712) "godot.x11.tools"):
#0  0x000078faa22d7ef5 in clock_nanosleep@GLIBC_2.2.5 () from /lib64/libc.so.6
#1  0x000078faa22dc623 in nanosleep () from /lib64/libc.so.6
#2  0x0000000002b92416 in OS_Unix::delay_usec (this=0x7ffce743dbc0, p_usec=1000) at drivers/unix/os_unix.cpp:243
#3  0x0000000002ba27d7 in AudioDriverPulseAudio::thread_func (p_udata=0x7ffce743e148) at drivers/pulseaudio/audio_driver_pulseaudio.cpp:562
#4  0x0000000004993b65 in Thread::callback (p_self=0x7ffce743e188, p_settings=..., p_callback=0x2ba1b7a <AudioDriverPulseAudio::thread_func(void*)>, p_userdata=0x7ffce743e148) at core/os/thread.cpp:78
#5  0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0xac2ef28: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#6  0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0xac2ef28: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#7  0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0xac2ef08) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#8  0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0xac2ef08) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#9  0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0xac2ef00) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#10 0x0000000004d7bcf0 in execute_native_thread_routine ()
#11 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#12 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 3 (Thread 0x78fa9dbff640 (LWP 23697) "godot.x11.tools"):
#0  0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6
#1  0x000078faa228d650 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x0000000004d0b6ec in std::condition_variable::wait(std::unique_lock<std::mutex>&) ()
#3  0x0000000004573115 in Semaphore::wait (this=0x87c53d0) at ./core/os/semaphore.h:58
#4  VisualServerScene::_gi_probe_bake_thread (this=0x86ad260) at servers/visual/visual_server_scene.cpp:3151
#5  0x0000000004571f2e in VisualServerScene::_gi_probe_bake_threads (self=0x86ad260) at servers/visual/visual_server_scene.cpp:2945
#6  0x0000000004993b65 in Thread::callback (p_self=0x87c53c0, p_settings=..., p_callback=0x4571f0e <VisualServerScene::_gi_probe_bake_threads(void*)>, p_userdata=0x86ad260) at core/os/thread.cpp:78
#7  0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0x87c54a8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#8  0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0x87c54a8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#9  0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0x87c5488) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#10 0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0x87c5488) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#11 0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0x87c5480) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#12 0x0000000004d7bcf0 in execute_native_thread_routine ()
#13 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#14 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 2 (Thread 0x78faa197e640 (LWP 23693) "godot.x11.tools"):
#0  0x000078faa228af1a in __futex_abstimed_wait_common () from /lib64/libc.so.6
#1  0x000078faa228d650 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libc.so.6
#2  0x0000000004d0b6ec in std::condition_variable::wait(std::unique_lock<std::mutex>&) ()
#3  0x0000000004a4ae2c in Semaphore::wait (this=0x81a7308) at ./core/os/semaphore.h:58
#4  _IP_ResolverPrivate::_thread_function (self=0x81a6ee0) at core/io/ip.cpp:108
#5  0x0000000004993b65 in Thread::callback (p_self=0x81a7368, p_settings=..., p_callback=0x4a4adcd <_IP_ResolverPrivate::_thread_function(void*)>, p_userdata=0x81a6ee0) at core/os/thread.cpp:78
#6  0x0000000004994a65 in std::__invoke_impl<void, void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__f=@0x81a73c8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:61
#7  0x000000000499492e in std::__invoke<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> (__fn=@0x81a73c8: 0x4993ac8 <Thread::callback(Thread*, Thread::Settings const&, void (*)(void*), void*)>) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/invoke.h:96
#8  0x00000000049947e9 in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul> (this=0x81a73a8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:253
#9  0x000000000499474e in std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> >::operator() (this=0x81a73a8) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:260
#10 0x0000000004994732 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(Thread*, Thread::Settings const&, void (*)(void*), void*), Thread*, Thread::Settings, void (*)(void*), void*> > >::_M_run (this=0x81a73a0) at /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include/g++-v11/bits/std_thread.h:211
#11 0x0000000004d7bcf0 in execute_native_thread_routine ()
#12 0x000078faa228e267 in start_thread () from /lib64/libc.so.6
#13 0x000078faa2310d4c in clone3 () from /lib64/libc.so.6

Thread 1 (Thread 0x78faa28a9800 (LWP 23692) "godot.x11.tools"):
#0  0x000078faa22dc3e7 in wait4 () from /lib64/libc.so.6
#1  0x000078faa2539581 in dump_native_stacktrace (signal=signal@entry=0x78faa2804b30 "SIGSEGV", mctx=mctx@entry=0xb566a20) at mini-posix.c:1112
#2  0x000078faa2539699 in mono_dump_native_crash_info (signal=signal@entry=0x78faa2804b30 "SIGSEGV", mctx=mctx@entry=0xb566a20, info=info@entry=0x0) at mini-posix.c:1156
#3  0x000078faa24c83b1 in mono_handle_native_crash (signal=0x78faa2804b30 "SIGSEGV", mctx=mctx@entry=0xb566a20, info=info@entry=0x0) at mini-exceptions.c:3423
#4  0x000078faa25329d5 in altstack_handle_and_restore (ctx=0xb566a20, obj=0x0, flags=<optimized out>) at exceptions-amd64.c:879
#5  0x0000000001818b41 in CowData<wchar_t>::_ref (this=0x300, p_from=...) at ./core/cowdata.h:361
#6  0x0000000001818abd in String::operator= (this=0x300, p_str=...) at ./core/ustring.h:365
#7  0x0000000001903ee6 in GDScript::load_source_code (this=0x0, p_path=...) at modules/gdscript/gdscript.cpp:804
#8  0x0000000001a0fadb in GDScriptTextDocument::sync_script_content (this=0x15d120a0, p_path=..., p_content=...) at modules/gdscript/language_server/gdscript_text_document.cpp:431
#9  0x0000000001a0c2be in GDScriptTextDocument::didOpen (this=0x15d120a0, p_param=...) at modules/gdscript/language_server/gdscript_text_document.cpp:63
#10 0x0000000001a076ea in MethodBind1<Variant const&>::call (this=0x15d0efb0, p_object=0x15d120a0, p_args=0x7ffce743d3f0, p_arg_count=1, r_error=...) at ./core/method_bind.gen.inc:775
#11 0x000000000484280e in Object::call (this=0x15d120a0, p_method=..., p_args=0x7ffce743d3f0, p_argcount=1, r_error=...) at core/object.cpp:918
#12 0x00000000048420f2 in Object::callv (this=0x15d120a0, p_method=..., p_args=...) at core/object.cpp:827
#13 0x0000000001a4168e in JSONRPC::process_action (this=0xbd82408, p_action=..., p_process_arr_elements=true) at modules/jsonrpc/jsonrpc.cpp:129
#14 0x0000000001a41edc in JSONRPC::process_string (this=0xbd82408, p_input=...) at modules/jsonrpc/jsonrpc.cpp:165
#15 0x00000000019f9827 in GDScriptLanguageProtocol::process_message (this=0xbd82408, p_text=...) at modules/gdscript/language_server/gdscript_language_protocol.cpp:141
#16 0x00000000019f9288 in GDScriptLanguageProtocol::LSPeer::handle_data (this=0x1e95f350) at modules/gdscript/language_server/gdscript_language_protocol.cpp:96
#17 0x00000000019fac35 in GDScriptLanguageProtocol::poll (this=0xbd82408) at modules/gdscript/language_server/gdscript_language_protocol.cpp:242
#18 0x0000000001a09541 in GDScriptLanguageServer::_notification (this=0xbd821e0, p_what=25) at modules/gdscript/language_server/gdscript_language_server.cpp:62
#19 0x0000000001a0a68c in GDScriptLanguageServer::_notificationv (this=0xbd821e0, p_notification=25, p_reversed=false) at modules/gdscript/language_server/gdscript_language_server.h:39
#20 0x0000000004842933 in Object::notification (this=0xbd821e0, p_notification=25, p_reversed=false) at core/object.cpp:927
#21 0x00000000038a8082 in SceneTree::_notify_group_pause (this=0xbda2400, p_group=..., p_notification=25) at scene/main/scene_tree.cpp:990
#22 0x00000000038a5bb3 in SceneTree::idle (this=0xbda2400, p_time=0.0421996452) at scene/main/scene_tree.cpp:535
#23 0x00000000018678a6 in Main::iteration () at main/main.cpp:2201
#24 0x0000000001829733 in OS_X11::run (this=0x7ffce743dbc0) at platform/x11/os_x11.cpp:3643
#25 0x000000000181649f in main (argc=4, argv=0x7ffce743e4d8) at platform/x11/godot_x11.cpp:55
[Inferior 1 (process 23692) detached]

=================================================================
        Basic Fault Address Reporting
=================================================================
Memory around native instruction pointer (0x1818b41):0x1818b31  04 25 28 00 00 00 48 89 45 f8 31 c0 48 8b 45 98  .%(...H.E.1.H.E.
0x1818b41  48 8b 10 48 8b 45 90 48 8b 00 48 39 c2 0f 84 2c  H..H.E.H..H9...,
0x1818b51  01 00 00 48 8b 45 98 48 8b 10 48 8b 45 98 48 89  ...H.E.H..H.E.H.
0x1818b61  d6 48 89 c7 e8 40 db ff ff 48 8b 45 98 48 c7 00  .H...@...H.E.H..

=================================================================
        Managed Stacktrace:
=================================================================
=================================================================

I was frustrated and tried to look a bit further what could be the problem.

If you look closely in the Thread 1 there is that specific frame here #7 0x0000000001903ee6 in GDScript::load_source_code (this=0x0, p_path=...) at modules/gdscript/gdscript.cpp:804 where this is nullptr, which is probably isn't normal since by looking at the source code here:

void GDScriptTextDocument::sync_script_content(const String &p_path, const String &p_content) {
	String path = GDScriptLanguageProtocol::get_singleton()->get_workspace()->get_file_path(p_path);
	GDScriptLanguageProtocol::get_singleton()->get_workspace()->parse_script(path, p_content);

	EditorFileSystem::get_singleton()->update_file(path);
	Error error;
	Ref<GDScript> script = ResourceLoader::load(path, "", false, &error);
	if (error == OK) {
		if (script->load_source_code(path) == OK) {
			script->reload(true);
		}
	}
}

error == OK, so there must be somewhere a logic that fails in the core of Godot since ResourceLoader is from core code and it gives a null reference when there's no errors instead of giving an error?

I tried to look further, in ResourceLoader::load and after digging a bit more the problem seems more complicated than it seems but this is probably of my lack of experience in Godot in general sorry for that.

Since it's been just few mins I've been running it, it seems to return a null reference finally in RES ResourceFormatLoader::load(const String &p_path, const String &p_original_path, Error *r_error), but I couldn't go further debugging due to lack of time sorry, so I'm reporting it here.

Thank you.

Steps to reproduce

I just created an empty project, tried to add a new C# script and editing it there with cocvim:

"godot": {
	"host": "127.0.0.1",
	"filetypes": ["gd", "gdscript3", "cs"],
	"port": 6008
    }

Minimal reproduction project

I don't think this is needed since it is reproducible with any projects I have so far, even empty ones.

@Calinou
Copy link
Member

Calinou commented May 27, 2022

I wanted to try out C# with cocvim using the language server that Godot provides at 127.0.0.1;6008.

Godot's language server is only for GDScript, not C#.

We should aim to fix this crash, but ideally, there should be some kind of explicit error message printed stating that the language server is only designed for GDScript. There are no plans to add a C# language server, as this kind of functionality is better provided by OmniSharp and the like.

@Calinou Calinou added the bug label May 27, 2022
@XutaxKamay
Copy link
Contributor Author

XutaxKamay commented May 27, 2022

I wanted to try out C# with cocvim using the language server that Godot provides at 127.0.0.1;6008.

Godot's language server is only for GDScript, not C#.

We should aim to fix this crash, but ideally, there should be some kind of explicit error message printed stating that the language server is only designed for GDScript. There are no plans to add a C# language server, as this kind of functionality is better provided by OmniSharp and the like.

I see, yeah at least printing C# isn't compatible would be great.

I have tried Omnisharp but I still run into issues with it (like the fact it asks me to install .NET framework 4.7.2 but runs only in Windows) but this is not related to this issue in any way, just a problem on my side. I guess it works well with VSCode though.

@YuriSizov YuriSizov added this to the 3.x milestone Mar 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants