summaryrefslogtreecommitdiffstats
path: root/src/ByteBuffer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ByteBuffer.cpp')
-rw-r--r--src/ByteBuffer.cpp24
1 files changed, 5 insertions, 19 deletions
diff --git a/src/ByteBuffer.cpp b/src/ByteBuffer.cpp
index 1a4dc8bb8..5b4cdb745 100644
--- a/src/ByteBuffer.cpp
+++ b/src/ByteBuffer.cpp
@@ -7,6 +7,7 @@
#include "ByteBuffer.h"
#include "Endianness.h"
+#include "UUID.h"
#include "OSSupport/IsThread.h"
@@ -32,16 +33,6 @@ Unfortunately it is very slow, so it is disabled even for regular DEBUG builds.
-static char ValueToHexDigit(UInt8 digit)
-{
- ASSERT(digit < 16);
- return "0123456789abcdef"[digit];
-}
-
-
-
-
-
#ifdef DEBUG_SINGLE_THREAD_ACCESS
/** Simple RAII class that is used for checking that no two threads are using an object simultanously.
@@ -506,22 +497,17 @@ bool cByteBuffer::ReadPosition64(int & a_BlockX, int & a_BlockY, int & a_BlockZ)
-bool cByteBuffer::ReadUUID(AString & a_Value)
+bool cByteBuffer::ReadUUID(cUUID & a_Value)
{
CHECK_THREAD
- if (!ReadString(a_Value, 16))
+ std::array<Byte, 16> UUIDBuf;
+ if (!ReadBuf(UUIDBuf.data(), UUIDBuf.size()))
{
return false;
}
- a_Value.resize(32);
- for (unsigned int i = 15; i < 16; i--)
- {
- a_Value[i * 2 + 1] = ValueToHexDigit(a_Value[i] & 0xf);
- a_Value[i * 2] = ValueToHexDigit(static_cast<UInt8>(a_Value[i]) >> 4);
- }
-
+ a_Value.FromRaw(UUIDBuf);
return true;
}