3
0
Mirror von https://github.com/GeyserMC/Geyser.git synchronisiert 2024-12-26 16:12:46 +01:00

Don't always automatically restart the skin uploader

Dieser Commit ist enthalten in:
Tim203 2021-06-12 14:20:30 +02:00
Ursprung cc2d26dda8
Commit bae4906879
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 064EE9F5BF7C3EE8

Datei anzeigen

@ -56,6 +56,7 @@ public final class FloodgateSkinUploader {
private final GeyserLogger logger; private final GeyserLogger logger;
private final WebSocketClient client; private final WebSocketClient client;
private volatile boolean closed;
@Getter private int id; @Getter private int id;
@Getter private String verifyCode; @Getter private String verifyCode;
@ -218,6 +219,12 @@ public final class FloodgateSkinUploader {
} }
private void reconnectLater(GeyserConnector connector) { private void reconnectLater(GeyserConnector connector) {
// we ca only reconnect when the thread pool is open
if (connector.getGeneralThreadPool().isShutdown() || closed) {
logger.info("The skin uploader has been closed");
return;
}
long additionalTime = ThreadLocalRandom.current().nextInt(7); long additionalTime = ThreadLocalRandom.current().nextInt(7);
// we don't have to check the result. onClose will handle that for us // we don't have to check the result. onClose will handle that for us
connector.getGeneralThreadPool() connector.getGeneralThreadPool()
@ -230,6 +237,9 @@ public final class FloodgateSkinUploader {
} }
public void close() { public void close() {
if (!closed) {
closed = true;
client.close(); client.close();
} }
}
} }