Commit graph

65462 commits

Author SHA1 Message Date
Pedro J. Estébanez
28a7a95531 ResourceLoader: Fix sync issues with error reporting
This is about not letting the resource format loader set the error code directly on the task anymore. Instead, it's stored locally and assigned only when it is right to do so.

Otherwise, other tasks may see an error code in the current one before it's state having transitioned to errored. While this, besides the technically true data race, may not be a problem in practice, it causes surprising situations during debugging as it breaks assumptions.
2024-07-19 10:00:41 +02:00
Pedro J. Estébanez
5b5cdf2414 Fixup recent changes to threading concerns
ResourceLoader:
- Fix invalid tokens being returned.
- Remove no longer written `ThreadLoadTask::dependent_path` and the code reading from it.
- Clear deadlock hazard by keeping the mutex unlocked during userland polling.

WorkerThreadPool:
- Include thread call queue override in the thread state reset set, which allows to simplify the code that handled that (imperfectly) in the ResourceLoader.
- Handle the mutex type correctly on entering an allowance zone.

CommandQueueMT:
- Handle the additional possibility of command buffer reallocation that mutex unlock allowance introduces.
2024-07-16 11:03:02 +02:00
Pedro J. Estébanez
10b543f8a7 WorkerThreadPool: Fix wrong sync logic breaking task map integrity 2024-07-15 12:15:25 +02:00
Pedro J. Estébanez
62d9ce6445 Re-add resource thread-safety measures
These deferring measures were added to aid threaded resource loading in being safe.

They were removed as seemingly unneeded, but it seems they are needed so resources involved in threaded loading interact with others only after "sync points".
2024-07-15 12:15:22 +02:00
Rémi Verschelde
26d1577f39
Merge pull request #94131 from dalexeev/gds-fix-mismatched-parser-autoloads
GDScript: Fix "Mismatched external parser" for autoloads
2024-07-09 16:47:32 +02:00
Rémi Verschelde
5514510f7f
Merge pull request #94117 from mhilbrunner/fix-94090-vsproj-scons-4.8
Fix VS project generation with SCons 4.8.0+
2024-07-09 16:47:29 +02:00
Rémi Verschelde
b4943e16e1
Merge pull request #94115 from Zorvalt/fix-git-timestamp-with-show-signature
SCons: Fix build fetching `git_timestamp` if git `log.showsignature=true`
2024-07-09 16:47:26 +02:00
Rémi Verschelde
1b0430dc3a
Merge pull request #94114 from bruvzg/ios_text_change
[iOS/Text Input] Avoid deleting and reentering unchanged part of text.
2024-07-09 16:47:23 +02:00
Rémi Verschelde
92320c9b73
Merge pull request #94025 from dalexeev/gds-fix-implicit-cast-typed-array-param
GDScript: Fix implicit cast to typed array when passing parameter
2024-07-09 16:47:20 +02:00
Rémi Verschelde
ff8050efda
Merge pull request #94014 from markdibarry/parallax-snap
Add pixel snap for `Parallax2D`
2024-07-09 16:47:17 +02:00
Rémi Verschelde
40cb283dd7
Merge pull request #93866 from Chaosus/shader_fix_global_func_set
Improve code for setup of `global_func_set` in `ShaderLanguage`
2024-07-09 16:47:13 +02:00
Rémi Verschelde
17e7253ea8
Merge pull request #93721 from semensanyok/fix-RichTextLabel-fade-start-index
Fix RichTextLabel fade set `start_index` to command offset
2024-07-09 16:47:10 +02:00
Rémi Verschelde
49a6171319
Merge pull request #93352 from Calinou/linuxbsd-controller-no-trackpad-graphics-tablet
Fix trackpads and graphics tablets being recognized as controllers on Linux/*BSD
2024-07-09 16:47:04 +02:00
Danil Alexeev
110c4d4067
GDScript: Fix "Mismatched external parser" for autoloads 2024-07-09 16:16:45 +03:00
Max Hilbrunner
f682406cf2 Fix VS project generation with SCons 4.8.0+ 2024-07-09 09:55:41 +02:00
bruvzg
c632b47b48
[iOS/Text Input] Avoid deleting and reentering unchanged part of text. 2024-07-09 08:32:27 +03:00
Rémi Verschelde
82cedc83c9
Merge pull request #94107 from akien-mga/scons-optimize-auto
SCons: Default `optimize` to `auto`, fixing `target`/`dev_build` inference for Web
2024-07-09 01:25:04 +02:00
Rémi Verschelde
8897c77d50
SCons: Default optimize to auto, fixing target/dev_build inference for Web
Fixes #94087.
2024-07-09 00:21:29 +02:00
Rémi Verschelde
b0467d07bf
Merge pull request #94105 from KoBeWi/same_parent_new_problems
Fix wrong inspected node after drag&drop
2024-07-09 00:03:32 +02:00
Rémi Verschelde
60da1ccd79
Merge pull request #94103 from akien-mga/thorvg-0.14.1
thorvg: Update to 0.14.1
2024-07-09 00:03:29 +02:00
Rémi Verschelde
6d2fe76084
Merge pull request #94102 from Calinou/obj-import-fix-no-surfaces-error
Fix error message being printed when importing an OBJ with no surfaces
2024-07-09 00:03:26 +02:00
Rémi Verschelde
c10fde6137
Merge pull request #94095 from clayjohn/GLES3-drawbuffers
Use `GL_COLOR_ATTACHMENT` in depth prepass when using Multiview.
2024-07-09 00:03:23 +02:00
Rémi Verschelde
daba91d8c6
Merge pull request #93897 from akien-mga/vformat-better-error-message
Core: Improve `vformat` error reporting on `sprintf` failure
2024-07-09 00:03:17 +02:00
Rémi Verschelde
6f9c0aa40d
Merge pull request #93630 from BastiaanOlij/scene_data_projection_correction
Make RenderSceneData take projection correction into account
2024-07-09 00:03:14 +02:00
Rémi Verschelde
8bf4a158e5
Merge pull request #82012 from BrinerLovo/fix_81929
Animation: Fix reset value when adding new Bezier track
2024-07-09 00:03:11 +02:00
Rémi Verschelde
8ed9bfdc25
Merge pull request #94089 from dsnopek/gdext-valid-runtime-properties
GDExtension: Fix setting base class properties on a runtime class
2024-07-08 23:53:12 +02:00
kobewi
b51d9117ed Fix wrong inspected node after drag&drop 2024-07-08 23:52:16 +02:00
Rémi Verschelde
79a24fa7e0
thorvg: Update to 0.14.1 2024-07-08 23:20:55 +02:00
BrinerLovo
bf01119cdf
Animation: Fix reset value when adding new Bezier track
Fixes #81929.

In Float and Integer types, there is no subindex – only the primary value.
Currently, trying to retrieve a subindex from these types in the Variant leads
to a return value of null. To address this, the proposed change ensures that
the default value is returned for these types instead of attempting an invalid
subindex retrieval.
2024-07-08 23:18:03 +02:00
Hugo Locurcio
bbf68306c5
Fix error message being printed when importing an OBJ with no surfaces
An OBJ with no surfaces is valid, and typically happens when
you import an OBJ mesh with no associated MTL file.
2024-07-08 23:14:52 +02:00
clayjohn
5b213dcd26 Use GL_COLOR_ATTACHMENT in depth prepass when using Multiview.
I am certain this is a driver bug. But on some devices when no draw buffer is specified, the depth operations fail when there is no color buffer.
2024-07-08 12:52:20 -07:00
Zorvalt
5a81d2440f Fix build fetching git_timestamp if git log.showsignature=true 2024-07-08 21:52:07 +02:00
David Snopek
91fcdff01e GDExtension: Fix setting base class properties on a runtime class 2024-07-08 12:33:55 -05:00
Rémi Verschelde
16f98cd707
Merge pull request #94079 from RandomShaper/editor_main_mq
Let EditorLog use the right call queue for thread safety
2024-07-08 19:13:45 +02:00
Rémi Verschelde
6deaa15590
Merge pull request #94076 from AThousandShips/lambda_get_method_fix
[GDScript] Fix `get_method` for lambda self `Callable`s
2024-07-08 19:13:42 +02:00
Rémi Verschelde
3ced38cf28
Merge pull request #94073 from mihe/macos-home-end
Add Home/End to text caret movements on macOS
2024-07-08 19:13:39 +02:00
Rémi Verschelde
f85b1e4e3a
Merge pull request #94070 from RandomShaper/fix_wtp_rl_annoyance
ResourceLoader: Fix error message due to already-awaited tasks being re-awaited
2024-07-08 19:13:36 +02:00
Rémi Verschelde
40d9f3a158
Merge pull request #94020 from Hilderin/fix-reimport-model-does-not-update-scene
Fix re-import glb model doesn't change the old glb model
2024-07-08 19:13:34 +02:00
Rémi Verschelde
3220b6fb11
Merge pull request #93976 from Hilderin/fix-caret-disappear-from-script-editor
Fix caret can disappear from script editor
2024-07-08 19:13:31 +02:00
Rémi Verschelde
16d549adc9
Merge pull request #93765 from Jordyfel/reimport-dependency-bug
Fix reimport by scan parsing dependency paths incorrectly
2024-07-08 19:13:28 +02:00
Rémi Verschelde
137b138be8
Merge pull request #84974 from KoBeWi/import_reimport
Reimport file when .import changes
2024-07-08 19:13:24 +02:00
A Thousand Ships
f68ab70a6a
[GDScript] Fix get_method for lambda self Callables 2024-07-08 18:01:54 +02:00
Pedro J. Estébanez
20298fbf07 Let EditorLog use the right call queue for thread safety
This is a complement to f61c63e3a1.
2024-07-08 17:18:46 +02:00
Mikael Hermansson
085f0cc50a Add Home/End to text caret movements on macOS 2024-07-08 16:08:27 +02:00
Hilderin
ebd1ab646c Fix caret can disappear from script editor 2024-07-08 07:11:17 -04:00
Pedro J. Estébanez
a426479b3f ResourceLoader: Fix error message due to already-awaited tasks being re-awaited 2024-07-08 12:19:44 +02:00
Rémi Verschelde
ec02d406ca
Merge pull request #94067 from RandomShaper/fix_build
Windows: Fix build error due to missing definition of Texture2D
2024-07-08 11:48:36 +02:00
Rémi Verschelde
9804a8eb30
Merge pull request #94061 from bruvzg/menu_is_native
[NativeMenu] Do not auto toggle check/multi-state items. Add `is_native_menu` method.
2024-07-08 11:48:33 +02:00
Rémi Verschelde
f4bf25cb35
Merge pull request #94057 from kitbdev/fix-request-save-signal-type
Fix ScriptEditor `request_save_previous_state` signal type
2024-07-08 11:48:30 +02:00
Rémi Verschelde
50db553ed5
Merge pull request #94054 from mihe/fix-bezier-focus
Fix focus shortcut when in the bezier curve editor
2024-07-08 11:48:26 +02:00