diff options
Diffstat (limited to 'src/WorldStorage')
-rw-r--r-- | src/WorldStorage/CMakeLists.txt | 6 | ||||
-rw-r--r-- | src/WorldStorage/SchematicFileSerializer.cpp | 30 | ||||
-rw-r--r-- | src/WorldStorage/WorldStorage.cpp | 4 |
3 files changed, 24 insertions, 16 deletions
diff --git a/src/WorldStorage/CMakeLists.txt b/src/WorldStorage/CMakeLists.txt index 074958191..017d85f27 100644 --- a/src/WorldStorage/CMakeLists.txt +++ b/src/WorldStorage/CMakeLists.txt @@ -14,7 +14,8 @@ SET (SRCS ScoreboardSerializer.cpp StatSerializer.cpp WSSAnvil.cpp - WorldStorage.cpp) + WorldStorage.cpp +) SET (HDRS EnchantmentSerializer.h @@ -26,7 +27,8 @@ SET (HDRS ScoreboardSerializer.h StatSerializer.h WSSAnvil.h - WorldStorage.h) + WorldStorage.h +) if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") set_source_files_properties(EnchantmentSerializer.cpp PROPERTIES COMPILE_FLAGS "-Wno-error=old-style-cast") diff --git a/src/WorldStorage/SchematicFileSerializer.cpp b/src/WorldStorage/SchematicFileSerializer.cpp index fb881e290..3e9ed5bef 100644 --- a/src/WorldStorage/SchematicFileSerializer.cpp +++ b/src/WorldStorage/SchematicFileSerializer.cpp @@ -9,6 +9,7 @@ #include "FastNBT.h" #include "SchematicFileSerializer.h" #include "../StringCompression.h" +#include "../SelfTests.h" @@ -21,6 +22,11 @@ static class cSchematicStringSelfTest public: cSchematicStringSelfTest(void) { + cSelfTests::Get().Register(cSelfTests::SelfTestFunction(&Test), "Schematic-to-string serialization"); + } + + static void Test(void) + { cBlockArea ba; ba.Create(21, 256, 21); ba.RelLine(0, 0, 0, 9, 8, 7, cBlockArea::baTypes | cBlockArea::baMetas, E_BLOCK_WOODEN_STAIRS, 1); @@ -232,27 +238,27 @@ bool cSchematicFileSerializer::LoadFromSchematicNBT(cBlockArea & a_BlockArea, cP } // Copy the block types and metas: - size_t NumBytes = a_BlockArea.GetBlockCount(); - if (a_NBT.GetDataLength(TBlockTypes) < NumBytes) + size_t NumTypeBytes = a_BlockArea.GetBlockCount(); + if (a_NBT.GetDataLength(TBlockTypes) < NumTypeBytes) { - LOG("BlockTypes truncated in the schematic file (exp %d, got %d bytes). Loading partial.", - (int)NumBytes, (int)a_NBT.GetDataLength(TBlockTypes) + LOG("BlockTypes truncated in the schematic file (exp %u, got %u bytes). Loading partial.", + static_cast<unsigned>(NumTypeBytes), static_cast<unsigned>(a_NBT.GetDataLength(TBlockTypes)) ); - NumBytes = a_NBT.GetDataLength(TBlockTypes); + NumTypeBytes = a_NBT.GetDataLength(TBlockTypes); } - memcpy(a_BlockArea.m_BlockTypes, a_NBT.GetData(TBlockTypes), NumBytes); + memcpy(a_BlockArea.m_BlockTypes, a_NBT.GetData(TBlockTypes), NumTypeBytes); if (AreMetasPresent) { - size_t NumBytes = a_BlockArea.GetBlockCount(); - if (a_NBT.GetDataLength(TBlockMetas) < NumBytes) + size_t NumMetaBytes = a_BlockArea.GetBlockCount(); + if (a_NBT.GetDataLength(TBlockMetas) < NumMetaBytes) { - LOG("BlockMetas truncated in the schematic file (exp %d, got %d bytes). Loading partial.", - (int)NumBytes, (int)a_NBT.GetDataLength(TBlockMetas) + LOG("BlockMetas truncated in the schematic file (exp %u, got %u bytes). Loading partial.", + static_cast<unsigned>(NumMetaBytes), static_cast<unsigned>(a_NBT.GetDataLength(TBlockMetas)) ); - NumBytes = a_NBT.GetDataLength(TBlockMetas); + NumMetaBytes = a_NBT.GetDataLength(TBlockMetas); } - memcpy(a_BlockArea.m_BlockMetas, a_NBT.GetData(TBlockMetas), NumBytes); + memcpy(a_BlockArea.m_BlockMetas, a_NBT.GetData(TBlockMetas), NumMetaBytes); } return true; diff --git a/src/WorldStorage/WorldStorage.cpp b/src/WorldStorage/WorldStorage.cpp index c7a295175..7e6cadb7e 100644 --- a/src/WorldStorage/WorldStorage.cpp +++ b/src/WorldStorage/WorldStorage.cpp @@ -84,7 +84,7 @@ void cWorldStorage::Stop(void) void cWorldStorage::WaitForFinish(void) { - LOG("Waiting for the world storage to finish saving"); + LOGD("Waiting for the world storage to finish saving"); { m_LoadQueue.Clear(); @@ -97,7 +97,7 @@ void cWorldStorage::WaitForFinish(void) m_ShouldTerminate = true; m_Event.Set(); // Wake up the thread if waiting super::Wait(); - LOG("World storage thread finished"); + LOGD("World storage thread finished"); } |