mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-04-20 16:00:20 +00:00
Address several LevelDB related crashdumps in the crash archive
This commit is contained in:
parent
120cf56a47
commit
23752548fe
@ -634,7 +634,7 @@ class Chunk{
|
||||
* @param Tile $tile
|
||||
*/
|
||||
public function addTile(Tile $tile){
|
||||
if($tile->closed){
|
||||
if($tile->isClosed()){
|
||||
throw new \InvalidArgumentException("Attempted to add a garbage closed Tile to a chunk");
|
||||
}
|
||||
$this->tiles[$tile->getId()] = $tile;
|
||||
|
@ -514,8 +514,9 @@ class LevelDB extends BaseLevelProvider{
|
||||
private function writeTags(array $targets, string $index){
|
||||
$nbt = new NBT(NBT::LITTLE_ENDIAN);
|
||||
$out = [];
|
||||
/** @var Entity|Tile $target */
|
||||
foreach($targets as $target){
|
||||
if(!$target->closed){
|
||||
if(!$target->isClosed()){
|
||||
$target->saveNBT();
|
||||
$out[] = $target->namedtag;
|
||||
}
|
||||
|
@ -180,6 +180,10 @@ abstract class Tile extends Position{
|
||||
$this->level->updateTiles[$this->id] = $this;
|
||||
}
|
||||
|
||||
public function isClosed() : bool{
|
||||
return $this->closed;
|
||||
}
|
||||
|
||||
public function __destruct(){
|
||||
$this->close();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user