Server: duct tape for very early startup crashes

Exceptions occurring early in the start sequence (before BaseLang is initialized) will result in the server hanging and not killing process as expected. This works around that issue.
This commit is contained in:
Dylan K. Taylor 2018-02-04 19:52:55 +00:00
parent 07bf1c9e22
commit bf3f5532ac

View File

@ -2218,8 +2218,8 @@ class Server{
ini_set("error_reporting", '0');
ini_set("memory_limit", '-1'); //Fix error dump not dumped on memory problems
$this->logger->emergency($this->getLanguage()->translateString("pocketmine.crash.create"));
try{
$this->logger->emergency($this->getLanguage()->translateString("pocketmine.crash.create"));
$dump = new CrashDump($this);
$this->logger->emergency($this->getLanguage()->translateString("pocketmine.crash.submit", [$dump->getPath()]));
@ -2261,7 +2261,9 @@ class Server{
}
}catch(\Throwable $e){
$this->logger->logException($e);
$this->logger->critical($this->getLanguage()->translateString("pocketmine.crash.error", [$e->getMessage()]));
try{
$this->logger->critical($this->getLanguage()->translateString("pocketmine.crash.error", [$e->getMessage()]));
}catch(\Throwable $e){}
}
//$this->checkMemory();