diff --git a/libs/Maniaplanet/DedicatedServer/Connection.php b/libs/Maniaplanet/DedicatedServer/Connection.php index f88d942a..e7962782 100755 --- a/libs/Maniaplanet/DedicatedServer/Connection.php +++ b/libs/Maniaplanet/DedicatedServer/Connection.php @@ -4250,9 +4250,9 @@ class Connection if(is_string($filename)) { $filename = $this->stripBom($filename); - if(mb_check_encoding($filename, 'ascii')) - return $filename; - return "\xEF\xBB\xBF".$filename; + if(preg_match('/[^\x09\x0A\x0D\x20-\x7E]/', $filename)) + return "\xEF\xBB\xBF".$filename; + return $filename; } return array_map(array($this, 'secureUtf8'), $filename); } diff --git a/libs/Maniaplanet/DedicatedServer/Xmlrpc/FaultException.php b/libs/Maniaplanet/DedicatedServer/Xmlrpc/FaultException.php index c3e37d7b..bb317e9b 100755 --- a/libs/Maniaplanet/DedicatedServer/Xmlrpc/FaultException.php +++ b/libs/Maniaplanet/DedicatedServer/Xmlrpc/FaultException.php @@ -34,6 +34,7 @@ class FaultException extends Exception return new LockedFeatureException($faultString, $faultCode); case 'Login or Uid unknown.': case 'Login unknown.': + case 'Payer login unknown.': return new UnknownPlayerException($faultString, $faultCode); case 'The player is not a spectator': case 'The player is not a spectator.':