Eliminate usages of BinaryStream->setBuffer() and BinaryStream->reset()

This commit is contained in:
Dylan K. Taylor
2020-06-17 13:49:43 +01:00
parent 893f7cb6ef
commit c618932d25
5 changed files with 16 additions and 11 deletions

View File

@ -240,8 +240,6 @@ class LevelDB extends BaseWorldProvider implements WritableWorldProvider{
$chunkVersion = ord($chunkVersionRaw);
$hasBeenUpgraded = $chunkVersion < self::CURRENT_LEVEL_CHUNK_VERSION;
$binaryStream = new BinaryStream();
switch($chunkVersion){
case 15: //MCPE 1.12.0.4 beta (???)
case 14: //MCPE 1.11.1.2 (???)
@ -262,7 +260,7 @@ class LevelDB extends BaseWorldProvider implements WritableWorldProvider{
continue;
}
$binaryStream->setBuffer($data);
$binaryStream = new BinaryStream($data);
if($binaryStream->feof()){
throw new CorruptedChunkException("Unexpected empty data for subchunk $y");
}
@ -324,7 +322,7 @@ class LevelDB extends BaseWorldProvider implements WritableWorldProvider{
}
if(($maps2d = $this->db->get($index . self::TAG_DATA_2D)) !== false){
$binaryStream->setBuffer($maps2d);
$binaryStream = new BinaryStream($maps2d);
try{
$binaryStream->get(512); //heightmap, discard it
@ -343,7 +341,7 @@ class LevelDB extends BaseWorldProvider implements WritableWorldProvider{
if($legacyTerrain === false){
throw new CorruptedChunkException("Missing expected LEGACY_TERRAIN tag for format version $chunkVersion");
}
$binaryStream->setBuffer($legacyTerrain);
$binaryStream = new BinaryStream($legacyTerrain);
try{
$fullIds = $binaryStream->get(32768);
$fullData = $binaryStream->get(16384);