godot/core
Fabio Alessandrelli 324636473a [Net] Fix Marshalls infinite recursion crash.
Variants like dictionaries and arrays can have cyclic references, which
caused `encode_variant` to run an infinite recursion.
Instead of keeping a stack and looking for cyclic references which would
make serialization slower, this commit adds a `MAX_RECURSION_DEPTH`
constant to Variant, and have `encode_variant` keep track of the current
recursion depth, bailing when it's too high since this likely means a
cyclic reference has been encountered.
2021-07-30 16:13:43 +02:00
..
config Use const references where possible for List range iterators 2021-07-25 12:22:25 +02:00
crypto [Crypto] Delete mbedtls ctx in deconstructor. 2021-07-03 16:12:55 +02:00
debugger Use const references where possible for List range iterators 2021-07-25 12:22:25 +02:00
error Modernize atomics 2021-02-18 17:12:46 +01:00
extension Change Variant bool conversion to uint8_t 2021-07-27 09:00:56 -03:00
input Use const references where possible for List range iterators 2021-07-25 12:22:25 +02:00
io [Net] Fix Marshalls infinite recursion crash. 2021-07-30 16:13:43 +02:00
math Merge pull request #50809 from akien-mga/iterators-const-references 2021-07-25 12:52:58 +02:00
object Use const references where possible for List range iterators 2021-07-25 12:22:25 +02:00
os Use doubles for time everywhere in Timer/SceneTree 2021-07-26 02:00:48 -04:00
string Use const references where possible for List range iterators 2021-07-25 12:22:25 +02:00
templates Fix Set range iterator implementation 2021-07-27 02:48:28 +02:00
variant [Net] Fix Marshalls infinite recursion crash. 2021-07-30 16:13:43 +02:00
SCsub Implement native extension system 2021-06-25 17:32:45 -03:00
core_bind.cpp Use Ref<T> references as iterators where relevant 2021-07-26 19:27:11 +02:00
core_bind.h Fix various typos with codespell 2021-07-25 11:21:51 +02:00
core_builders.py Update AUTHORS and DONORS list 2020-08-14 00:06:51 +02:00
core_constants.cpp Add type variations to Theme 2021-07-13 02:26:28 +03:00
core_constants.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
core_string_names.cpp Removed _change_notify 2021-02-10 19:31:24 -03:00
core_string_names.h Removed _change_notify 2021-02-10 19:31:24 -03:00
doc_data.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
doc_data.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
register_core_types.cpp Fix various typos with codespell 2021-07-25 11:21:51 +02:00
register_core_types.h Implement native extension system 2021-06-25 17:32:45 -03:00
typedefs.h Implement the ability to disable classes 2021-07-13 09:25:14 -03:00
version.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00