13
0
geforkt von Mirrors/Velocity

Remove duplicate in-flight connection reset

Dieser Commit ist enthalten in:
Andrew Steinborn 2020-06-03 12:18:29 -04:00
Ursprung 40ec39aa5e
Commit 669bd14779
2 geänderte Dateien mit 3 neuen und 5 gelöschten Zeilen

Datei anzeigen

@ -84,9 +84,7 @@ public class VelocityServerConnection implements MinecraftConnectionAssociation,
connectionPhase = connection.getType().getInitialBackendPhase(); connectionPhase = connection.getType().getInitialBackendPhase();
startHandshake(); startHandshake();
} else { } else {
// We need to remember to reset the in-flight connection to allow connect() to work // Complete the result immediately. ConnectedPlayer will reset the in-flight connection.
// properly.
proxyPlayer.resetInFlightConnection();
result.completeExceptionally(future.cause()); result.completeExceptionally(future.cause());
} }
}); });

Datei anzeigen

@ -758,12 +758,12 @@ public class ConnectedPlayer implements MinecraftConnectionAssociation, Player {
ConnectedPlayer.this, server); ConnectedPlayer.this, server);
connectionInFlight = con; connectionInFlight = con;
return con.connect().whenCompleteAsync((result, throwable) -> return con.connect().whenCompleteAsync((result, throwable) ->
this.cleanupIfRequired(con), connection.eventLoop()); this.resetIfInFlightIs(con), connection.eventLoop());
}, connection.eventLoop()); }, connection.eventLoop());
}); });
} }
private void cleanupIfRequired(VelocityServerConnection establishedConnection) { private void resetIfInFlightIs(VelocityServerConnection establishedConnection) {
if (establishedConnection == connectionInFlight) { if (establishedConnection == connectionInFlight) {
resetInFlightConnection(); resetInFlightConnection();
} }