mirror of
https://github.com/PaperMC/Paper.git
synced 2025-04-27 22:29:21 +02:00
Remote Connections shouldn't hold up shutdown
Bugs in the connection logic appears to leave stale connections even, preventing shutdown
This commit is contained in:
parent
1273cf0f21
commit
a44dc35353
2 changed files with 26 additions and 2 deletions
paper-server/patches/sources/net/minecraft/server
|
@ -250,8 +250,17 @@
|
|||
@Override
|
||||
public boolean isSpawningMonsters() {
|
||||
return this.settings.getProperties().spawnMonsters && super.isSpawningMonsters();
|
||||
@@ -293,6 +403,7 @@
|
||||
this.queryThreadGs4.stop();
|
||||
@@ -286,13 +396,14 @@
|
||||
}
|
||||
|
||||
if (this.rconThread != null) {
|
||||
- this.rconThread.stop();
|
||||
+ this.rconThread.stopNonBlocking(); // Paper - don't wait for remote connections
|
||||
}
|
||||
|
||||
if (this.queryThreadGs4 != null) {
|
||||
- this.queryThreadGs4.stop();
|
||||
+ // this.remoteStatusListener.stop(); // Paper - don't wait for remote connections
|
||||
}
|
||||
|
||||
+ System.exit(0); // CraftBukkit
|
||||
|
|
|
@ -9,3 +9,18 @@
|
|||
if (string.isEmpty()) {
|
||||
string = "0.0.0.0";
|
||||
}
|
||||
@@ -104,6 +104,14 @@
|
||||
|
||||
this.clients.clear();
|
||||
}
|
||||
+ // Paper start - don't wait for remote connections
|
||||
+ public void stopNonBlocking() {
|
||||
+ this.running = false;
|
||||
+ for (RconClient client : this.clients) {
|
||||
+ client.running = false;
|
||||
+ }
|
||||
+ }
|
||||
+ // Paper end - don't wait for remote connections
|
||||
|
||||
private void closeSocket(ServerSocket socket) {
|
||||
LOGGER.debug("closeSocket: {}", socket);
|
||||
|
|
Loading…
Add table
Reference in a new issue