Rémi Verschelde
3e09b0bfa7
Merge pull request #78508 from Wuqiqi123/free_depth_texture_when_frame_buffer_check_failed
...
Free depth texture after check framebuffer complete failed
2023-06-22 10:30:07 +02:00
Rémi Verschelde
9d9740fc35
Merge pull request #78486 from dinoplane/fix-sat-slider
...
Use cached saturation for color picker when value is 0
2023-06-22 10:30:04 +02:00
Rémi Verschelde
d40c45ed99
Merge pull request #77688 from L4Vo5/clarify-deferred
...
Clear up misconceptions about when deferred things run in the docs
2023-06-22 10:29:56 +02:00
Qiqi Wu
df740f6865
free color and depth texture after check framebuffer complete failed
2023-06-22 09:13:24 +08:00
Peter Anderson
0f64c6a952
Fix example in JSON class.
2023-06-21 22:41:14 +00:00
dinoplane
e11e9d2b9a
Use cached saturation for color picker when value is 0
2023-06-21 15:18:20 -07:00
Rémi Verschelde
b6ba664830
Merge pull request #78528 from jeanahelver/master
...
Fix missing enum value for `Window.initial_position`
2023-06-21 23:22:00 +02:00
jeana helver
5ec1b698d2
Fix missing enum value for `Window.initial_position`
...
Reorder the properties in a possibly more intuitive order.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-06-21 22:39:43 +02:00
clayjohn
8a5af8183a
Add warnings and fallbacks for particles sub emitters when using the GL Compatibility rendering backend
...
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-06-21 12:56:52 -07:00
Rémi Verschelde
f2ce0b6741
Merge pull request #78521 from jpcerrone/fix_static_vars_refs
...
Fix errors destroying script with static variables
2023-06-21 21:52:15 +02:00
Rémi Verschelde
1e44b47970
Merge pull request #78499 from BastiaanOlij/fix_stereo_decals
...
Apply reprojection in multiview for our cluster lookup
2023-06-21 21:51:52 +02:00
Rémi Verschelde
e68270cace
Merge pull request #78488 from paulloz/dotnet-check-projectpath-not-solutionpath
...
Fix condition blocking .NET project build
2023-06-21 21:51:29 +02:00
Rémi Verschelde
faf3faa8c8
Merge pull request #77744 from dalexeev/gds-reset-block-locals-on-exit
...
GDScript: Reset local variables on exit from block
2023-06-21 21:51:05 +02:00
Rémi Verschelde
81a0199be4
Merge pull request #78533 from anvilfolk/sadrevert
...
GDScript: fix regression when checking for virtual function implementation
2023-06-21 21:50:33 +02:00
ocean (they/them)
6c28b8edd3
GDScript: fix regression when checking for virtual function implementation.
...
Unfortunately it appears the virtual function checks in #77324 are not
trustworthy at runtime, because objects can have scripts attached, but
this information is not always available at compile-time. These checks
need to be removed.
The rest of the PR is still useful, making all method flags available to
the analyzer, so a full revert isn't necessary/desirable.
This reopens #76938 , which will need another solution.
2023-06-21 15:13:45 -04:00
Paul Joannon
dbdbe5b042
Fix condition blocking .NET project build
...
Since #73015 , the build commands are called on project files instead of solution ones.
2023-06-21 20:13:32 +02:00
jpcerrone
8ce8216d17
Fix errors destroying script with static variables
...
Fixes #78376
After #78138 'script_list' is now cleared in 'GDScriptLanguage::finish'
Because of that, we can safely remove the removal from that list that
happens on 'GDScript::~GDScript'.
2023-06-21 12:33:21 -03:00
Rémi Verschelde
28a60b3de0
Merge pull request #78518 from Bromeon/feature/gdextension-since
...
Add GDExtension `@since` attribute
2023-06-21 16:17:07 +02:00
Ryan Roden-Corrent
731a13a1ba
Fix race in ScriptServer.
...
Fixes #76581 .
TSAN flagged this issue on starting the editor:
1. main calls register_core_types, which calls IP::create(), which calls Thread::start on the resolver thread
2. Thread::callback calls ScriptServer::thread_enter(), as "Scripts may need to attach a stack."
3. ScriptServer::thread_enter() accesses ScriptServer::_languages, which is still being initialized on the main thread by initialize_gdscript_module
This fixes the issue by skipping thread enter/exit notifications if languages have not finished initializing yet.
I'm assuming that notifying un-initialized languages of thread starts/stops would have been pointless anyways. If we need to somehow notify languages of threads before the languages initialize, we'll need a different solution.
```
Godot Engine v4.0.2.stable.custom_build.7a0977ce2 - https://godotengine.org
==================
WARNING: ThreadSanitizer: data race (pid=9426)
Write of size 4 at 0x55615b187cd0 by main thread:
#0 ScriptServer::register_language(ScriptLanguage*) /home/rcorre/src/godot/godot/core/object/script_language.cpp:177:28 (godot.linuxbsd.editor.x86_64.llvm.san+0x9e52ab9) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#1 initialize_gdscript_module(ModuleInitializationLevel) /home/rcorre/src/godot/godot/modules/gdscript/register_types.cpp:118:3 (godot.linuxbsd.editor.x86_64.llvm.san+0x36f9c6f) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#2 initialize_modules(ModuleInitializationLevel) /home/rcorre/src/godot/godot/modules/register_module_types.gen.cpp:93:2 (godot.linuxbsd.editor.x86_64.llvm.san+0x2f50499) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#3 Main::setup2(unsigned long) /home/rcorre/src/godot/godot/main/main.cpp:1961:2 (godot.linuxbsd.editor.x86_64.llvm.san+0x2f1d40d) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#4 Main::setup(char const*, int, char**, bool) /home/rcorre/src/godot/godot/main/main.cpp:1879:10 (godot.linuxbsd.editor.x86_64.llvm.san+0x2f16370) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#5 main /home/rcorre/src/godot/godot/platform/linuxbsd/godot_linuxbsd.cpp:61:14 (godot.linuxbsd.editor.x86_64.llvm.san+0x2e67e1f) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
Previous read of size 4 at 0x55615b187cd0 by thread T1:
#0 ScriptServer::thread_enter() /home/rcorre/src/godot/godot/core/object/script_language.cpp:244:22 (godot.linuxbsd.editor.x86_64.llvm.san+0x9e54aed) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#1 Thread::callback(unsigned long, Thread::Settings const&, void (*)(void*), void*) /home/rcorre/src/godot/godot/core/os/thread.cpp:61:2 (godot.linuxbsd.editor.x86_64.llvm.san+0x9464ab0) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#2 void std::__invoke_impl<void, void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>(std::__invoke_other, void (*&&)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long&&, Thread::Settings&&, void (*&&)(void*), void*&&) /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/invoke.h:61:14 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#3 std::__invoke_result<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>::type std::__invoke<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>(void (*&&)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long&&, Thread::Settings&&, void (*&&)(void*), void*&&) /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/invoke.h:96:14 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283)
#4 void std:🧵 :_Invoker<std::tuple<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>>::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul>(std::_Index_tuple<0ul, 1ul, 2ul, 3ul, 4ul>) /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/std_thread.h:258:13 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283)
#5 std:🧵 :_Invoker<std::tuple<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>>::operator()() /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/std_thread.h:265:11 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283)
#6 std:🧵 :_State_impl<std:🧵 :_Invoker<std::tuple<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>>>::_M_run() /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/std_thread.h:210:13 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283)
#7 execute_native_thread_routine /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:82:18 (libstdc++.so.6+0xd72c2) (BuildId: 6fe66a2d539a78c993bd2d377e00fad389220963)
Location is global 'ScriptServer::_language_count' of size 4 at 0x55615b187cd0 (godot.linuxbsd.editor.x86_64.llvm.san+0xbf46cd0)
Thread T1 (tid=9431, running) created by main thread at:
#0 pthread_create <null> (godot.linuxbsd.editor.x86_64.llvm.san+0x2de5776) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#1 __gthread_create /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:663:35 (libstdc++.so.6+0xd73a9) (BuildId: 6fe66a2d539a78c993bd2d377e00fad389220963)
#2 std:🧵 :_M_start_thread(std::unique_ptr<std:🧵 :_State, std::default_delete<std:🧵 :_State>>, void (*)()) /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:147:37 (libstdc++.so.6+0xd73a9)
#3 IP::IP() /home/rcorre/src/godot/godot/core/io/ip.cpp:347:19 (godot.linuxbsd.editor.x86_64.llvm.san+0x962cbcd) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#4 IPUnix::IPUnix() /home/rcorre/src/godot/godot/drivers/unix/ip_unix.cpp:261:9 (godot.linuxbsd.editor.x86_64.llvm.san+0x4aee599) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#5 IPUnix::_create_unix() /home/rcorre/src/godot/godot/drivers/unix/ip_unix.cpp:258:9 (godot.linuxbsd.editor.x86_64.llvm.san+0x4aee599)
#6 IP::create() /home/rcorre/src/godot/godot/core/io/ip.cpp:339:9 (godot.linuxbsd.editor.x86_64.llvm.san+0x962ca5e) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#7 register_core_types() /home/rcorre/src/godot/godot/core/register_core_types.cpp:279:7 (godot.linuxbsd.editor.x86_64.llvm.san+0x93e2333) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#8 Main::setup(char const*, int, char**, bool) /home/rcorre/src/godot/godot/main/main.cpp:690:2 (godot.linuxbsd.editor.x86_64.llvm.san+0x2f08a49) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
#9 main /home/rcorre/src/godot/godot/platform/linuxbsd/godot_linuxbsd.cpp:61:14 (godot.linuxbsd.editor.x86_64.llvm.san+0x2e67e1f) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
SUMMARY: ThreadSanitizer: data race /home/rcorre/src/godot/godot/core/object/script_language.cpp:177:28 in ScriptServer::register_language(ScriptLanguage*)
```
Co-authored-by: Pedro J. Estébanez <RandomShaper@users.noreply.github.com>
2023-06-21 09:52:10 -04:00
Rémi Verschelde
a2ce7a8f88
Merge pull request #78494 from kinami-imai/SSDinaTvuI8geW91IGFsbAo=
...
Fix lambda parsing continuing on subsequent lines
2023-06-21 13:52:42 +02:00
今井きなみ
bf04c55175
Fix lambda parsing continuing on subsequent lines #73273
2023-06-21 12:56:57 +02:00
RedworkDE
e0f644a48d
C#: Fix editor integration breaking and causing error spam when reloading assemblies fails
...
- Do not reload scripts from non-collectible assemblies
- Do not load GodotTools as collectible
- Do not attempt to reload the same project assembly forever
2023-06-21 12:47:52 +02:00
Jan Haller
9ddd3c2af6
GDExtension `@since` attribute
...
All GDExtension function pointer types are versioned using a `@since` attribute, denoting the Godot minor version in
which they were introduced. This allows bindings to query if a feature is available for a target API version, or provide
a polyfill/fallback for it. It also serves as documentation for humans giving a feeling about recency of features.
2023-06-21 12:47:48 +02:00
Rémi Verschelde
ee41b2097c
Merge pull request #78509 from MewPurPur/redraw-code-edit-on-mouse-exit
...
Hide breakpoint indicator when mouse leaves CodeEdit
2023-06-21 12:43:01 +02:00
Rémi Verschelde
735bf14ae7
Merge pull request #76636 from angel-721/test-http
...
Add HTTPClient unit tests
2023-06-21 12:42:54 +02:00
angel-721
ab4e89ecde
Add HTTPClient unit tests
2023-06-21 11:53:55 +02:00
MewPurPur
6e182d41f4
Hide breakpoint indicator when mouse leaves CodeEdit
2023-06-21 11:30:40 +02:00
Yuri Sizov
ebd44641c5
Merge pull request #78492 from KoBeWi/too_slow
...
Update indices after removing custom data layers
2023-06-21 11:19:36 +02:00
Yuri Sizov
4fc045e9b5
Merge pull request #76152 from timothyqiu/tile-resize-clamp
...
Fix tile resizing towards atlas boundary
2023-06-21 11:19:24 +02:00
Rémi Verschelde
ada712e06a
Merge pull request #78504 from timothyqiu/gridmap-selection
...
Fix GridMap tile picking when a search filter is applied
2023-06-21 10:20:11 +02:00
Rémi Verschelde
5285927f51
Merge pull request #78495 from lyuma/import_tracks_single_clip
...
Fix Import Tracks import setting for single clip
2023-06-21 10:19:47 +02:00
Rémi Verschelde
d252f43a86
Merge pull request #78449 from Scony/add-agent-n-map-navserver-tests
...
Add `agent` and `map` tests for 'NavigationServer3D'
2023-06-21 10:19:24 +02:00
Rémi Verschelde
3e5c50bc2f
Merge pull request #78250 from Ryan-000/master
...
Clarify that authority is not automatically replicated
2023-06-21 10:19:00 +02:00
Rémi Verschelde
78518be194
Merge pull request #75444 from lpriebe/editor-run-arg-split-fix
...
Prevent quoted args in `editor/main_run_args` from being split at spaces
2023-06-21 10:18:37 +02:00
Rémi Verschelde
9e56f28d0e
Merge pull request #75345 from Rindbee/fix-wrong-description-in-EditorSettings
...
Fix wrong descriptions in EditorSettings
2023-06-21 10:18:09 +02:00
Rémi Verschelde
5025d95d41
Merge pull request #69027 from Uxeron/AudioListener2DRotationFix
...
Fix AudioListener2D ignoring rotation for positional audio
2023-06-21 10:17:37 +02:00
Uxeron
20ceba9e82
Fix AudioListener2D ignoring rotation
2023-06-21 08:10:01 +03:00
Haoyu Qiu
42faab826d
Fix GridMap tile picking when a search filter is applied
2023-06-21 12:02:07 +08:00
Bastiaan Olij
952b4b3f38
Apply reprojection in multiview for our cluster lookup
2023-06-21 11:17:01 +10:00
kobewi
c1c5b0a435
Update indices after removing custom data layers
2023-06-21 03:12:53 +02:00
Yuri Sizov
38ae7b58d1
Merge pull request #78350 from ajreckof/you-know-when-you-want-to-search-this-member-you-don't-know-and-then-you-have-the-script-editor-all-over-the-place-now-it-should-not-happen-anymore-hopefully
...
Fix placement and style of the "Make Floating" button
2023-06-21 03:03:19 +02:00
Rindbee
19d77ea90d
Fix wrong descriptions in EditorSettings
...
Fix wrong descriptions about `editors/3d/grid_division_level_max`
and `editors/3d/grid_division_level_min`.
2023-06-21 07:16:30 +08:00
ajreckof
13e65da804
Fix wrong placement of the Make Floating Button.
2023-06-21 01:00:37 +02:00
Lyuma
0d0e8b0a8a
Fix Import Tracks import setting for single clip
2023-06-20 15:49:38 -07:00
Ryan Memarpour
9dc850a2ea
Clarify that authority is not automatically replicated.
2023-06-20 21:49:02 +02:00
Yuri Sizov
329652b6fe
Merge pull request #78392 from Gallilus/master
...
Fix `Ref<>.is_valid()` for ScriptInstanceExtension
2023-06-20 21:19:20 +02:00
Yuri Sizov
58fae90ff3
Merge pull request #78477 from groud/fix_tileset_set_as_local_to_scene
...
Fixes TileSet set as local to scene
2023-06-20 20:49:16 +02:00
Yuri Sizov
e002fb232a
Merge pull request #77717 from L4Vo5/clarify-idle-enums
...
Clarify when things with _IDLE and _PHYSICS enums will run
2023-06-20 20:48:42 +02:00
Yuri Sizov
ab545ece85
Merge pull request #76398 from spanzeri/insert-key-crash
...
Fix insert key crash with no animation
2023-06-20 20:39:52 +02:00
Yuri Sizov
db08287b18
Merge pull request #78456 from aaronfranke/tex-format-should
...
Check if the required texture format is imported in the export dialog
2023-06-20 20:38:02 +02:00