Rémi Verschelde
851d8e49e8
Merge pull request #100386 from hpvb/core-ubsan
...
Core: Fix UBSAN reports
2024-12-18 17:23:32 +01:00
HP van Braam
240f510fa7
Core ubsan fixes
...
This fixes UBSAN errors reported by running our testsuite, importing the
TPS demo, and running the TPS demo. I have tried, wherever possible, to
fix issues related to reported issues but not directly reported by UBSAN
because thse code paths just happened to not have been exercised in
these cases.
These fixes apply only to errors reported, and caused by, core/
The following things have been changed:
* Make sure there are no implicit sign changing casts in core.
* Explicitly type enums that are part of a public API such that users of
the API cannot pass in wrongly-sized values leading to potential stack
corruption.
* Ensure that memcpy is never called with invalid or null pointers as
this is undefined behavior, and when the engine is built with
optimizations turned on leads to memory corruption and hard to debug
crashes.
* Replace enum values only used as static values with constexpr static
const values instead. This has no runtime overhead. This makes it so
that the size of the enums is explicit.
* Make sure that nan and inf is handled consistently in String.
* Implement a _to_int template to ensure that all of the paths use the
same algorhithm, and correct the negative integer case.
* Changed the way the json serializer precision work, and added tests to
verify the new behavior. The behavior doesn't quite match master in
particulary for negative doubles as the original code tried to cast -inf
to an int. This then led to negative doubles losing all but one of
their decimal points when serializing. Behavior in GDScript remains
unchanged.
2024-12-18 14:31:12 +01:00
kit
63a90b3dd8
Add tests for SplitContainer
2024-12-17 18:16:52 -05:00
Rémi Verschelde
0ce9e3e941
Merge pull request #98504 from timothyqiu/test-keyevent-rtr
...
Fix `InputEventKey` test failure under certain system languages
2024-12-17 16:18:46 +01:00
Thaddeus Crews
2b41a217d2
Merge pull request #100259 from Sauermann/proposal-right-click-cancel-drag
...
Allow canceling drag-and-drop with right mouse button
2024-12-11 17:35:39 -06:00
Rémi Verschelde
c2e4ae782a
Merge pull request #100235 from akien-mga/revert-97303
...
Revert "Avoid duplicating signals from scene instances into packed scenes"
2024-12-11 18:48:18 +01:00
Markus Sauermann
4d6a6b21e2
Allow canceling drag-and-drop with right mouse button
...
This is a small usability enhancement, that allows users to cancel
drag-and-drop without the need to press the escape key on the keyboard.
2024-12-11 00:13:54 +01:00
Thaddeus Crews
8f16f864a6
Merge pull request #99765 from dalexeev/core-fix-json-from-to-native
...
Core: Fix `JSON.{from,to}_native()` issues
2024-12-10 14:15:53 -06:00
Rémi Verschelde
2153a60425
Revert "Avoid duplicating signals from scene instances into packed scenes"
...
This partially reverts commit 8a42e3d3ef
.
Comment improvements and the test case were kept, with one part commented out.
2024-12-10 10:42:58 +01:00
Thaddeus Crews
4b1a51d3e3
Merge pull request #100075 from demolke/simplify
...
Fix handling of leading `..` in simplify_path
2024-12-09 14:33:34 -06:00
Thaddeus Crews
e06f699354
Merge pull request #99886 from ZhiyiHu93/update-sky-tests
...
Add unit tests for Sky
2024-12-09 14:33:20 -06:00
Zhiyi Hu
1e62c7f53e
Add unit tests to Sky
2024-12-06 10:31:17 -05:00
Rémi Verschelde
aa8d9b83f6
Merge pull request #99960 from pafuent/fixing_tcp_server_flappy_disconnect_test
...
Fix `TCPServer` "Should disconnect client" test
2024-12-06 16:16:17 +01:00
demolke
964e2b3a9e
Fix handling of leading ..
in simplify_path
...
Prior to this `..\..\texture.png` was incorrectly simplified to `texture.png`
2024-12-06 07:53:55 +01:00
Thaddeus Crews
30b32396de
Merge pull request #100053 from bruvzg/font_change
...
Change default Arabic font to Vazirmatn.
2024-12-05 14:12:14 -06:00
Pāvels Nadtočajevs
06cae04b87
Change default Arabic font to Vazirmatn.
2024-12-05 16:26:52 +02:00
DeeJayLSP
eaa0418deb
TestAudioStreamWAV: use runtime load instead of importer
2024-12-04 18:44:48 -03:00
Pablo Andres Fuente
df2c2ca3c3
Fix TCPServer "Should disconnect client" test
...
"Should disconnect client" test was failing randomly on Mac CI tests, so
this PR is making it more reliable reading on the closed client instead of
writing to it
2024-12-03 09:46:37 -03:00
demolke
35bb827d10
Destroy EditorFilesystem/EditorSettings on test shutdown
...
Otherwise asan complains if a test tries to use these.
Split off from https://github.com/godotengine/godot/pull/98909
2024-12-02 19:34:39 +01:00
Rémi Verschelde
5836a24a1c
Merge pull request #99488 from bruvzg/te_brk_cases
...
[TextServer] Fix some line breaking edge cases.
2024-12-02 17:20:15 +01:00
Rémi Verschelde
90087476a3
Merge pull request #99726 from smix8/path_simply_test
...
Add test for NavigationServer path simplification
2024-12-02 15:51:25 +01:00
Rémi Verschelde
9048776457
Merge pull request #99751 from bruvzg/dir_init
...
Add `std::initializer_list` constructor for Dictionary.
2024-11-29 22:51:17 +01:00
Rémi Verschelde
8d3fc48abf
Merge pull request #97521 from pafuent/enhance_scroll_container_focus
...
Add a focus border on `ScrollContainer`
2024-11-29 22:46:09 +01:00
Rémi Verschelde
5d462ee4c5
Merge pull request #67857 from anvilfolk/extended-curve
...
Extend Curve to allow for domains outside of [0, 1].
2024-11-29 22:45:19 +01:00
Rémi Verschelde
bcb5f8377f
Merge pull request #99125 from Flarkk/projection_tests
...
Add tests for `Projection`
2024-11-29 22:01:59 +01:00
Rémi Verschelde
94082a424b
Merge pull request #97303 from cixil/fix-duplicate-signal-bug
...
Avoid duplicating signals from scene instances into packed scenes
2024-11-29 22:01:51 +01:00
cixil
8a42e3d3ef
Avoid duplicating signals from scene instances into packed scenes
2024-11-29 18:29:08 +01:00
Pāvels Nadtočajevs
54945c4d28
Add std::initializer_list constructor for Dictionary.
2024-11-29 14:12:40 +02:00
Pablo Andres Fuente
0c03db09f8
Add unit tests for TCPServer
...
This PR aims to help "fix" #43440
2024-11-29 12:55:49 +01:00
Danil Alexeev
bd1a35ce9e
Core: Fix JSON.{from,to}_native()
issues
2024-11-29 12:43:06 +03:00
Thaddeus Crews
3edf8b91e9
Merge pull request #98489 from Flarkk/fix_project_position
...
Fix Camera3D::project_position() when depth=zfar
2024-11-27 10:47:07 -06:00
Florent Guiocheau
f1f47c3a53
Add tests for Projection
2024-11-27 11:09:10 +01:00
smix8
b2e40829a8
Add test for NavigationServer path simplification
...
Adds test for NavigationServer3D.simplify_path() function.
2024-11-26 23:36:25 +01:00
Pāvels Nadtočajevs
0708048530
[TextServer] Fix some line breaking edge cases.
2024-11-25 10:31:07 +02:00
Pablo Andres Fuente
86ea0127a3
Add a focus border on ScrollContainer
...
Also added new unit tests for `Control`.
Co-authored-by: ator-dev <dominic.codedeveloper@gmail.com>
2024-11-23 23:54:38 -03:00
Pablo Andres Fuente
2c9de1d9d2
Add unit tests for UDPServer
...
This PR aims to help "fix" #43440
2024-11-22 23:08:05 -03:00
Thaddeus Crews
ea3154a0d4
Merge pull request #99424 from dalexeev/core-fix-builtin-enum-const-binds
...
Core: Fix built-in enum constant bindings
2024-11-22 14:54:31 -06:00
Thaddeus Crews
c35e4c41d2
Merge pull request #97716 from pafuent/add_half_precision_floating_point_to_stream_peer
...
Add half precision floating point support to `StreamPeer` and `FileAccess`
2024-11-22 14:54:19 -06:00
Danil Alexeev
03b05cf9ac
Core: Fix built-in enum constant bindings
2024-11-22 14:03:21 +03:00
Thaddeus Crews
f952bfe998
Merge pull request #98972 from dbnicholson/standardize-add-defaults
...
Expose `TranslationServer::standardize_locale` `add_default` param publicly
2024-11-21 17:57:01 -06:00
Dan Nicholson
6f4fadf65d
Expose standardize_locale add_default param publicly
...
Comparing locales can have surprising outcomes since it standardizes
locales with defaults. For example, zh and zh_CN result in an exact
match since the defaults change them both to zh_Hans_CN. Expose the
add_default parameter publicly with a default of false so the fully
standardized locale can be inspected.
2024-11-21 16:50:31 -07:00
Rémi Verschelde
23fc8e22a3
Merge pull request #95303 from EIREXE/inverted_composer
...
Fix `Projection::invert` for orthographic projection
2024-11-20 17:03:03 +01:00
Thaddeus Crews
32b4f40cc8
Merge pull request #99131 from MarcusAahl/my-testing-branch
...
Add basic tests for Fontfile
2024-11-19 15:20:17 -06:00
marcus åhl
c636c86f65
Basic Fontfile tests
2024-11-19 11:56:26 +01:00
Thaddeus Crews
d72112ba0a
Merge pull request #98816 from arkology/to-infinity-and-beyond
...
Improve `TextureProgressBar.set_radial_initial_angle()` by removing loops
2024-11-18 09:23:28 -06:00
Álex Román
02b2efc668
Fix Projection::invert on orthogonal projections and others.
...
Fixes #68878 , specially when using orthographic projection.
Also adds some tests.
2024-11-18 16:13:04 +01:00
arkology
d692b7bdde
Improve set_radial_initial_angle by removing loops
...
Replace two while loops with fposmodp.
Document radial_initial_angle wrapping.
Add testcases for set_radial_initial_angle()
2024-11-14 20:20:20 +03:00
Thaddeus Crews
cc6ee3e956
Merge pull request #98713 from dalexeev/core-fix-callable-get-bound-arguments
...
Core: Fix `Callable.get_bound_arguments{,_count}()` return incorrect data
2024-11-12 12:13:04 -06:00
Thaddeus Crews
8fd672cd87
Merge pull request #98120 from dalexeev/core-typed-dicts-bin-serialization
...
Core: Add typed dictionary support for binary serialization
2024-11-12 09:28:00 -06:00
Thaddeus Crews
27b394c52a
Merge pull request #98743 from dbnicholson/improve-compare-locales
...
Improve locale comparison
2024-11-12 09:27:54 -06:00