summaryrefslogtreecommitdiffstats
path: root/core
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge pull request #94910 from RandomShaper/res_load_unlockedRémi Verschelde2024-07-311-1/+13
|\ | | | | | | ResourceLoader: Let resource setup late steps invoke loading in turn
| * ResourceLoader: Let resource setup late steps invoke loading in turnPedro J. Estébanez2024-07-291-1/+13
| |
* | Fix use-after-free in WorkerThreadPoolAlvin Wong2024-07-291-1/+5
|/
* [Core] Fix `Variant::construct` of `Object`A Thousand Ships2024-07-251-1/+7
| | | | Variant type was not updated correctly causing leaks in ref-counted
* Replace .NET detection code with `ClassDB::class_exists("CSharpScript")`.bruvzg2024-07-231-1/+1
|
* Support 64-bit image sizes for VRAM compressionBlueCube33102024-07-212-2/+2
|
* Fix Image CowData crash when baking large lightmapsHugo Locurcio2024-07-192-66/+50
| | | | | | | | | | | This switches to 64-bit integers in select locations of the Image class, so that image resolutions of 16384×16384 (used by lightmap texture arrays) can be used properly. Values that are larger should also work. VRAM compression is also supported, although most VRAM-compressed formats are limited to individual slices of 16384×16384. WebP is limited to 16383×16383 due to format limitations.
* Merge pull request #94526 from RandomShaper/wtp_rl_prize_prequelRémi Verschelde2024-07-195-50/+72
|\ | | | | | | Batch of fixes for WorkerThreadPool and ResourceLoader (safe set)
| * ResourceLoader: Fix sync issues with error reportingPedro J. Estébanez2024-07-191-2/+4
| | | | | | | | | | | | 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.
| * Fixup recent changes to threading concernsPedro J. Estébanez2024-07-164-44/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * WorkerThreadPool: Fix wrong sync logic breaking task map integrityPedro J. Estébanez2024-07-151-3/+4
| |
| * Re-add resource thread-safety measuresPedro J. Estébanez2024-07-151-1/+16
| | | | | | | | | | | | 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".
* | [Core] Fix TypedArray encoding when full objects is disabledFabio Alessandrelli2024-07-181-5/+13
| |
* | Merge pull request #94452 from jamie-pate/fix_73374Rémi Verschelde2024-07-172-3/+2
|\ \ | | | | | | | | | Fix game window stops responding when debugger pauses
| * | Fix Game window stops responding when debugger pausesJamie Pate2024-07-102-3/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #73374 As of godot 4 On windows/osx the game window will be frozen and will not be updated. In the debugger loop it calls OS::get_singleton()->process_and_drop_events(); which allows windows/osx to handle system events. If the window doesn't handle these events then both systems will judge the window to be 'not responding' (osx beachball cursor) When the event processing code was migrated from OS to DisplayServer the process_and_drop_events() logic was moved to DisplayServer, but the call inside the remote debugger pause loop was not updated to call the DisplayServer version, there are currently no implementations of OS::process_and_drop_events() so i removed it and switched to the new DisplayServer::force_process_and_drop_events() method.
* | Merge pull request #94373 from maiself/fix-library-path-as-absRémi Verschelde2024-07-171-1/+1
|\ \ | | | | | | | | | Fix to restore `library_path` as absolute path
| * | Fix to restore `library_path` as absolute pathMai Lavelle2024-07-141-1/+1
| | |
* | | Merge pull request #94413 from rburing/fix_action_press_tickRémi Verschelde2024-07-171-2/+4
|\ \ \ | | | | | | | | | | | | Fix physics tick count in `Input.action_press` and `Input.action_release`
| * | | Fix physics tick count in Input.action_press and Input.action_releaseRicardo Buring2024-07-161-2/+4
| |/ / | | | | | | | | | The physics tick count was not yet updated there.
* | | Merge pull request #94307 from Bromeon/feature/bitfield-unsigned-docsRémi Verschelde2024-07-171-1/+5
|\ \ \ | | | | | | | | | | | | GDExtension docs: Advise bindings to use `uint64_t` for bitfields
| * | | GDExtension docs: advise bindings to use uint64_t for bitfieldsJan Haller2024-07-151-1/+5
| |/ /
* | | Merge pull request #94238 from RandomShaper/ref_is_now_rcRémi Verschelde2024-07-171-1/+1
|\ \ \ | | | | | | | | | | | | Make errors on `RefCounted.free()` more accurate
| * | | Make errors on RefCounted.free() more accuratePedro J. Estébanez2024-07-151-1/+1
| | | |
* | | | Merge pull request #94052 from m4gr3d/clean_input_dispatch_settingsRémi Verschelde2024-07-172-8/+8
|\ \ \ \ | |_|/ / |/| | | | | | | Cleanup Android input on render thread settings
| * | | Cleanup Android input on render thread settingsFredia Huya-Kouadio2024-07-092-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow up to https://github.com/godotengine/godot/pull/93933 Clean up the set of settings use to control whether Android input should be dispatched on the render thread. Addresses comments in https://github.com/godotengine/godot/pull/93933#issuecomment-2210437977
* | | | Merge pull request #93942 from MikeSchulze/73525Rémi Verschelde2024-07-112-0/+16
|\ \ \ \ | | | | | | | | | | | | | | | Fix GDScript analyzer error when instantiating EditorPlugins.
| * | | | Fix gdscript analyzer error when instantiating EditorPlugins.baptr2024-07-102-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Editor code is not instantiable outside of the editor (https://github.com/godotengine/godot/blob/1d14c054a12dacdc193b589e4afb0ef319ee2aae/core/object/class_db.cpp#L369). This is fine for editor plugins and the like, but the GDScript analyzer balks at it, causing F5 runs to fail: #73525. Instead, we really just want to know if the type is abstract - so add a new ClassDB method to check that and nothing else. Update core/object/class_db.cpp Apply code review comments Co-Authored-By: Bryce <1522777+baptr@users.noreply.github.com>
* | | | | Merge pull request #94133 from akien-mga/fix-gcc14-Wmaybe-uninitializedRémi Verschelde2024-07-111-1/+1
|\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | Fix a couple GCC 14 `-Wmaybe-uninitialized` warnings
| * | | | Fix a couple GCC 14 `-Wmaybe-uninitialized` warningsRémi Verschelde2024-07-091-1/+1
| | | | |
* | | | | GDScript: Fix "Mismatched external parser" for autoloadsDanil Alexeev2024-07-091-2/+2
|/ / / /
* | | | Merge pull request #93897 from akien-mga/vformat-better-error-messageRémi Verschelde2024-07-092-5/+5
|\ \ \ \ | | | | | | | | | | | | | | | Core: Improve `vformat` error reporting on `sprintf` failure
| * | | | Core: Improve vformat error reporting on sprintf failureRémi Verschelde2024-07-042-5/+5
| |/ / / | | | | | | | | | | | | And fix a few occurrences of formatting errors that led me to this.
* | | | Merge pull request #94089 from dsnopek/gdext-valid-runtime-propertiesRémi Verschelde2024-07-082-19/+45
|\ \ \ \ | | | | | | | | | | | | | | | GDExtension: Fix setting base class properties on a runtime class
| * | | | GDExtension: Fix setting base class properties on a runtime classDavid Snopek2024-07-082-19/+45
| |/ / /
* | | | Merge pull request #94073 from mihe/macos-home-endRémi Verschelde2024-07-081-0/+4
|\ \ \ \ | | | | | | | | | | | | | | | Add Home/End to text caret movements on macOS
| * | | | Add Home/End to text caret movements on macOSMikael Hermansson2024-07-081-0/+4
| | |_|/ | |/| |
* / | | ResourceLoader: Fix error message due to already-awaited tasks being re-awaitedPedro J. Estébanez2024-07-081-1/+1
|/ / /
* | | ResourceLoader: Fixup management of thread-specific statusPedro J. Estébanez2024-07-081-5/+2
| | | | | | | | | | | | | | | - Allows the message queue override to flush after loading each resource, which was the original intent. - Removes a redundant call to mark the thread as safe-for-nodes.
* | | Fix physics tick counterRicardo Buring2024-07-071-2/+3
| |/ |/| | | | | | | | | The counter is now incremented at the start of a physics tick rather than at the end. Co-authored-by: lawnjelly <lawnjelly@gmail.com>
* | Merge pull request #94006 from alvinhochun/log-file-utf8-fixRémi Verschelde2024-07-071-1/+1
|\ \ | | | | | | | | | Fix UTF-8 misintepreted as Latin-1 when logging to file
| * | Fix UTF-8 misintepreted as Latin-1 when logging to fileAlvin Wong2024-07-071-1/+1
| |/
* | Merge pull request #93993 from Chaosus/astargrid2d_update_fixRémi Verschelde2024-07-071-0/+4
|\ \ | | | | | | | | | Add a check to prevent user to call `AStarGrid2D::update` when its not needed
| * | Add a check to prevent user to call `AStarGrid2D::update` when its not neededYuri Rubinsky2024-07-061-0/+4
| |/
* | Merge pull request #91551 from m4rr5/configure_timestamp_query_elementsRémi Verschelde2024-07-071-0/+1
|\ \ | |/ |/| | | Add a project setting to configure the maximum number of timestamps.
| * Added a project setting to configure the maximum amount of timestamps, with ↵Marcel Offermans2024-05-051-0/+1
| | | | | | | | a description and a reference to the setting when the limit is hit and an ERR_FAIL_COND is hit.
* | Physics Interpolation - Fix `interpolated_transform_2d`lawnjelly2024-07-021-32/+2
| | | | | | | | Uses the skew correct `Transform2D::interpolate_with()` function rather than the bugged 3.x version.
* | Revert "Make freed object different than null in comparison operators"Rémi Verschelde2024-07-012-17/+17
| | | | | | | | | | | | | | | | | | | | This reverts commit 150b50cfcde95f74419ade2811d963224e96fc98. As discussed with the GDScript team, this has some implications which aren't fully consensual yet, and which we want to revisit. For now we revert to the 4.2 behavior for the 4.3 release, to avoid breaking user expectations.
* | WorkerThreadPool: Fix wrong pointer used in the case of BinaryMutexPedro J. Estébanez2024-06-281-2/+2
| |
* | Merge pull request #93695 from RandomShaper/res_load_main_thRémi Verschelde2024-06-282-0/+40
|\ \ | | | | | | | | | `ResourceLoader`: Support polling and get-before-complete on the main thread
| * | ResourceLoader: Support polling and get-before-complete on the main threadPedro J. Estébanez2024-06-282-0/+40
| | |