diff --git a/src/pocketmine/CrashDump.php b/src/pocketmine/CrashDump.php index 83d0956b6..9e309c061 100644 --- a/src/pocketmine/CrashDump.php +++ b/src/pocketmine/CrashDump.php @@ -143,7 +143,7 @@ class CrashDump{ E_USER_DEPRECATED => "E_USER_DEPRECATED", ); $error["fullFile"] = $error["file"]; - $error["file"] = str_replace(["\\", ".php", str_replace("\\", "/", \pocketmine\PATH)], ["/", "", ""], $error["file"]); + $error["file"] = str_replace(["\\", ".php", "phar://", str_replace(["\\", "phar://"], ["/", ""], \pocketmine\PATH)], ["/", "", "", ""], $error["file"]); $error["type"] = isset($errorConversion[$error["type"]]) ? $errorConversion[$error["type"]] : $error["type"]; if(($pos = strrpos($error["message"], "\n")) !== false){ $error["message"] = substr($error["message"], 0, $pos); diff --git a/src/pocketmine/PocketMine.php b/src/pocketmine/PocketMine.php index 95b43f37b..48853ecb1 100644 --- a/src/pocketmine/PocketMine.php +++ b/src/pocketmine/PocketMine.php @@ -193,7 +193,7 @@ namespace pocketmine { $params .= (is_object($value) ? get_class($value) . " " . (method_exists($value, "__toString") ? $value->__toString() : "object") : gettype($value) . " " . @strval($value)) . ", "; } } - $messages[] = "#$j " . (isset($trace[$i]["file"]) ? str_replace(["\\", ".php", str_replace("\\", "/", \pocketmine\PATH)], ["/", "", ""], $trace[$i]["file"]) : "") . "(" . (isset($trace[$i]["line"]) ? $trace[$i]["line"] : "") . "): " . (isset($trace[$i]["class"]) ? $trace[$i]["class"] . (($trace[$i]["type"] === "dynamic" or $trace[$i]["type"] === "->") ? "->" : "::") : "") . $trace[$i]["function"] . "(" . substr($params, 0, -2) . ")"; + $messages[] = "#$j " . (isset($trace[$i]["file"]) ? str_replace(["\\", ".php", "phar://", str_replace(["\\", "phar://"], ["/", ""], \pocketmine\PATH)], ["/", "", "", ""], $trace[$i]["file"]) : "") . "(" . (isset($trace[$i]["line"]) ? $trace[$i]["line"] : "") . "): " . (isset($trace[$i]["class"]) ? $trace[$i]["class"] . (($trace[$i]["type"] === "dynamic" or $trace[$i]["type"] === "->") ? "->" : "::") : "") . $trace[$i]["function"] . "(" . substr($params, 0, -2) . ")"; } return $messages; @@ -228,7 +228,7 @@ namespace pocketmine { } $logger = MainLogger::getLogger(); $oldFile = $errfile; - $errfile = str_replace(["\\", ".php", str_replace("\\", "/", \pocketmine\PATH)], ["/", "", ""], $errfile); + $errfile = str_replace(["\\", ".php", "phar://", str_replace(["\\", "phar://"], ["/", ""], \pocketmine\PATH)], ["/", "", "", ""], $errfile); $logger->log($type, "An $errno error happened: \"$errstr\" in \"$errfile\" at line $errline"); foreach(($trace = getTrace(3)) as $i => $line){ $logger->debug($line);