summaryrefslogtreecommitdiffstats
path: root/source/WorldStorage
diff options
context:
space:
mode:
Diffstat (limited to 'source/WorldStorage')
-rw-r--r--source/WorldStorage/FastNBT.cpp9
-rw-r--r--source/WorldStorage/WSSAnvil.cpp2
2 files changed, 10 insertions, 1 deletions
diff --git a/source/WorldStorage/FastNBT.cpp b/source/WorldStorage/FastNBT.cpp
index 397df036e..a81be9a89 100644
--- a/source/WorldStorage/FastNBT.cpp
+++ b/source/WorldStorage/FastNBT.cpp
@@ -503,17 +503,26 @@ void cFastNBTWriter::AddIntArray(const AString & a_Name, const int * a_Value, si
TagCommon(a_Name, TAG_IntArray);
Int32 len = htonl(a_NumElements);
m_Result.append((const char *)&len, 4);
+#if defined(ANDROID_NDK)
+ for (size_t i = 0; i < a_NumElements; i++)
+ {
+ int Element = htonl(a_Value[i]);
+ m_Result.append((const char *)&Element, 4);
+ }
+#else
int * Elements = (int *)(m_Result.data() + m_Result.size());
m_Result.append(a_NumElements * 4, (char)0);
for (size_t i = 0; i < a_NumElements; i++)
{
Elements[i] = htonl(a_Value[i]);
}
+#endif
}
+
void cFastNBTWriter::Finish(void)
{
ASSERT(m_CurrentStack == 0);
diff --git a/source/WorldStorage/WSSAnvil.cpp b/source/WorldStorage/WSSAnvil.cpp
index e588f53e7..e30b3c409 100644
--- a/source/WorldStorage/WSSAnvil.cpp
+++ b/source/WorldStorage/WSSAnvil.cpp
@@ -272,7 +272,7 @@ cWSSAnvil::cWSSAnvil(cWorld * a_World) :
ASSERT(TestParse.IsValid());
#endif // _DEBUG
- gzFile gz = gzopen(fnam.c_str(), "wb");
+ gzFile gz = gzopen((FILE_IO_PREFIX + fnam).c_str(), "wb");
if (gz != NULL)
{
gzwrite(gz, Writer.GetResult().data(), Writer.GetResult().size());