aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Database/Field.h
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2014-10-21 14:57:20 +0200
committerShauren <shauren.trinity@gmail.com>2014-10-21 14:57:20 +0200
commit1bea52fd4649b6a1761aa157f9e74f01e19872e7 (patch)
treeacfe289a149100283fffd905fd3ed25e28ae2d5c /src/server/shared/Database/Field.h
parentfe634ac8045e220c1e7de2c99ecea9b10b7faa4f (diff)
Core/DBLayer: Added support for BINARY field type
Diffstat (limited to 'src/server/shared/Database/Field.h')
-rw-r--r--src/server/shared/Database/Field.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/server/shared/Database/Field.h b/src/server/shared/Database/Field.h
index 2e888be5ed3..99f98572a56 100644
--- a/src/server/shared/Database/Field.h
+++ b/src/server/shared/Database/Field.h
@@ -228,7 +228,6 @@ class Field
}
#endif
return static_cast<char const*>(data.value);
-
}
std::string GetString() const
@@ -243,7 +242,18 @@ class Field
string = "";
return std::string(string, data.length);
}
- return std::string((char*)data.value);
+ return std::string((char*)data.value, data.length);
+ }
+
+ std::vector<uint8> GetBinary() const
+ {
+ std::vector<uint8> result;
+ if (!data.value || !data.length)
+ return result;
+
+ result.resize(data.length);
+ memcpy(result.data(), data.value, data.length);
+ return result;
}
bool IsNull() const
@@ -274,7 +284,7 @@ class Field
#endif
void SetByteValue(void const* newValue, size_t const newSize, enum_field_types newType, uint32 length);
- void SetStructuredValue(char* newValue, enum_field_types newType);
+ void SetStructuredValue(char* newValue, enum_field_types newType, uint32 length, bool isBinary);
void CleanUp()
{