summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/Protocol/MojangAPI.cpp15
-rw-r--r--src/Protocol/MojangAPI.h6
2 files changed, 17 insertions, 4 deletions
diff --git a/src/Protocol/MojangAPI.cpp b/src/Protocol/MojangAPI.cpp
index 52afd71da..86ff134db 100644
--- a/src/Protocol/MojangAPI.cpp
+++ b/src/Protocol/MojangAPI.cpp
@@ -233,9 +233,14 @@ bool cMojangAPI::SecureRequest(const AString & a_ServerName, const AString & a_R
AString cMojangAPI::MakeUUIDShort(const AString & a_UUID)
{
+ // Note: we only check the string's length, not the actual content
switch (a_UUID.size())
{
- case 32: return a_UUID;
+ case 32:
+ {
+ // Already is a short UUID
+ return a_UUID;
+ }
case 36:
{
@@ -260,12 +265,18 @@ AString cMojangAPI::MakeUUIDShort(const AString & a_UUID)
AString cMojangAPI::MakeUUIDDashed(const AString & a_UUID)
{
+ // Note: we only check the string's length, not the actual content
switch (a_UUID.size())
{
- case 36: return a_UUID;
+ case 36:
+ {
+ // Already is a dashed UUID
+ return a_UUID;
+ }
case 32:
{
+ // Insert dashes at the proper positions:
AString res;
res.reserve(36);
res.append(a_UUID, 0, 8);
diff --git a/src/Protocol/MojangAPI.h b/src/Protocol/MojangAPI.h
index cc2902a19..c99f940ad 100644
--- a/src/Protocol/MojangAPI.h
+++ b/src/Protocol/MojangAPI.h
@@ -36,11 +36,13 @@ public:
// tolua_begin
/** Converts the given UUID to its short form (32 bytes, no dashes).
- Logs a warning and returns empty string if not a UUID. */
+ Logs a warning and returns empty string if not a UUID.
+ Note: only checks the string's length, not the actual content. */
static AString MakeUUIDShort(const AString & a_UUID);
/** Converts the given UUID to its dashed form (36 bytes, 4 dashes).
- Logs a warning and returns empty string if not a UUID. */
+ Logs a warning and returns empty string if not a UUID.
+ Note: only checks the string's length, not the actual content. */
static AString MakeUUIDDashed(const AString & a_UUID);
// tolua_end