Merge branch 'stable' into next-minor

This commit is contained in:
Dylan K. Taylor 2019-07-29 17:31:06 +01:00
commit 23b00bea5b
3 changed files with 12 additions and 2 deletions

View File

@ -52,3 +52,8 @@ Plugin developers should **only** update their required API to this version if y
- Fixed `Item->setCustomName()` with an empty string leaving behind an empty tag.
- Fixed incorrect positioning of bucket empty sound.
- Fixed some incorrect tag parsing in `/give` involving quoted numbers.
# 3.9.3
- Fixed a memory leak on async task removal in error conditions.
- Fixed scheduled block updates (for example liquid) triggering chunk reloading. This could cause a significant performance issue in some conditions.
- Fixed some minor cosmetic issues in documentation.

View File

@ -22,6 +22,6 @@
namespace pocketmine;
const NAME = "PocketMine-MP";
const BASE_VERSION = "3.9.3";
const BASE_VERSION = "3.9.4";
const IS_DEVELOPMENT_BUILD = true;
const BUILD_NUMBER = 0;

View File

@ -820,7 +820,12 @@ class Level implements ChunkManager, Metadatable{
//Delayed updates
while($this->scheduledBlockUpdateQueue->count() > 0 and $this->scheduledBlockUpdateQueue->current()["priority"] <= $currentTick){
$block = $this->getBlock($this->scheduledBlockUpdateQueue->extract()["data"]);
/** @var Vector3 $vec */
$vec = $this->scheduledBlockUpdateQueue->extract()["data"];
if(!$this->isInLoadedTerrain($vec)){
continue;
}
$block = $this->getBlock($vec);
unset($this->scheduledBlockUpdateQueueIndex[Level::blockHash($block->x, $block->y, $block->z)]);
$block->onScheduledUpdate();
}