summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabio Alessandrelli <fabio.alessandrelli@gmail.com>2019-01-15 10:35:26 +0100
committerFabio Alessandrelli <fabio.alessandrelli@gmail.com>2019-01-15 10:35:26 +0100
commit1f7846abf8e2c3ec132426ef4d9c785297614244 (patch)
tree8485f125a0c241b9e2efa1a0b53d37bf1bf243f2
parent9ed34d44238d130f5c7d999bb7265e7c0e906567 (diff)
Fix MultiplayerAPI initialization, clear.
rpc_sender_id is now correctly initialized to 0 so get_rpc_sender_id() work reliably even if called before receiving any RPC. root_node is initialized to NULL (fix crashes when incorrectly using the MultiplayerAPI). clear function now resets the packet cache size to free more memory when not running.
-rw-r--r--core/io/multiplayer_api.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/core/io/multiplayer_api.cpp b/core/io/multiplayer_api.cpp
index 30c5bfcaa7..9a2dddbb82 100644
--- a/core/io/multiplayer_api.cpp
+++ b/core/io/multiplayer_api.cpp
@@ -122,6 +122,7 @@ void MultiplayerAPI::clear() {
connected_peers.clear();
path_get_cache.clear();
path_send_cache.clear();
+ packet_cache.clear();
last_send_cache_id = 1;
}
@@ -857,6 +858,8 @@ void MultiplayerAPI::_bind_methods() {
}
MultiplayerAPI::MultiplayerAPI() {
+ rpc_sender_id = 0;
+ root_node = NULL;
clear();
}