From d5a1961e6bef69b9459ece371552312cd21febfb Mon Sep 17 00:00:00 2001 From: Dylan T Date: Sun, 25 Nov 2018 14:35:35 +0000 Subject: [PATCH] Force minimum uptime to be >= 120 seconds if a crash occurs (#2534) This is an incremental improvement over 4a6841a5a465c791b512517394241f0ac0b38739. This change works better because it also reduces disk spam of crashdumps. This will now sleep if the server uptime was less than 120 seconds before crashing. If unattended, this will clamp down on automated crashdump spam. If attended, the user can simply press CTRL+C to abort the process and skip the delay. --- src/pocketmine/Server.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/pocketmine/Server.php b/src/pocketmine/Server.php index 97147fe22..80263789b 100644 --- a/src/pocketmine/Server.php +++ b/src/pocketmine/Server.php @@ -2247,6 +2247,12 @@ class Server{ $this->forceShutdown(); $this->isRunning = false; + + //Force minimum uptime to be >= 120 seconds, to reduce the impact of spammy crash loops + $spacing = ((int) \pocketmine\START_TIME) - time() + 120; + if($spacing > 0){ + sleep($spacing); + } @Utils::kill(getmypid()); exit(1); }