You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When a client disconnects on on_peer_change it looks like the intention of the code was to remove the peer ID from the list of received ids of that node with nc->recv_ids.erase(p_id); but what is actually in the code today is nc->recv_ids.erase(E.key); which in this case is trying to erase the remote cache id of the node from the list of received ids of the node, which doesn't really make sense since that is a list of peer ids that received that node.
The error happens because since the id wasn't being removed from the list of recv_ids when the node was eventually freed it tried to get the peer_info for that id and failed since the peer at this point no longer exists, showing the error.
Tested versions
System information
Godot v4.3.dev6 - Windows 10.0.22631 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3060 Laptop GPU (NVIDIA; 31.0.15.3758) - AMD Ryzen 9 5900HS with Radeon Graphics (16 Threads)
Issue description
When a client leaves, if you delete a node that was spawned by a Multiplayer Spawner, the following error pops up:
This happens at this point in the code (Taken from current master):
Steps to reproduce
Minimal reproduction project (MRP)
network_issue_minimum_repro.zip
The text was updated successfully, but these errors were encountered: