From 7fcc538a75895c58268a48fda9495ccdbc56d8f4 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sat, 17 Mar 2018 16:35:10 +0000 Subject: [PATCH] Level: clone Block object passed to setBlock() if set successfully closes #2042 --- src/pocketmine/level/Level.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pocketmine/level/Level.php b/src/pocketmine/level/Level.php index e1ba80a4c..6b5d06a8f 100644 --- a/src/pocketmine/level/Level.php +++ b/src/pocketmine/level/Level.php @@ -1519,6 +1519,8 @@ class Level implements ChunkManager, Metadatable{ $pos = $this->temporalPosition->setComponents($pos->x, $pos->y, $pos->z); } + $block = clone $block; + $block->position($pos); $block->clearCaches(); @@ -1535,7 +1537,7 @@ class Level implements ChunkManager, Metadatable{ $this->changedBlocks[$chunkHash] = []; } - $this->changedBlocks[$chunkHash][$blockHash] = clone $block; + $this->changedBlocks[$chunkHash][$blockHash] = $block; } foreach($this->getChunkLoaders($pos->x >> 4, $pos->z >> 4) as $loader){