-
Bug
-
Resolution: Fixed
-
1.20.6
-
None
-
Plausible
-
Networking
-
Normal
-
Platform
When using 3rd party software like BungeeCord or Velocity, which allow for switching between multiple servers,
there is an issue when the switches occur in quick succession.
Because of chat signing the client lazily sends the player session key, but its not checked if the phase is correct.
During server switching, the phase is changed to the config phase but the packet `ServerboundChatSessionUpdatePacket` might still be sent even during this phase.
A future is created in net.minecraft.client.multiplayer.ClientPacketListener.handleLogin which fetches the key pair and sends the packet,
but this depends on external factors (fetching an API) and therefore can finish at any time even if a new join/login packet is received or during the config phase.