aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMelvin1263 <melvin.engelhardt@gmail.com>2015-11-07 18:50:13 +0100
committerShauren <shauren.trinity@gmail.com>2015-11-07 18:50:13 +0100
commit262e61aae13a91d090220bb120e581c2875fccff (patch)
tree5bc1e050de57ef7c9601bc63833396c987825504 /src
parent78aa35ad5ea93c01755a3669f3d9b9d4a48dfc73 (diff)
Core/DataStores: Fixed reading uint64 fields from DB2 files
Closes #15818 Closes #15752
Diffstat (limited to 'src')
-rw-r--r--src/server/shared/DataStores/DB2StorageLoader.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/server/shared/DataStores/DB2StorageLoader.cpp b/src/server/shared/DataStores/DB2StorageLoader.cpp
index 347d3dfab5b..c50140adc34 100644
--- a/src/server/shared/DataStores/DB2StorageLoader.cpp
+++ b/src/server/shared/DataStores/DB2StorageLoader.cpp
@@ -169,9 +169,11 @@ bool DB2FileLoader::Load(const char *filename, const char *fmt)
for (uint32 i = 1; i < fieldCount; i++)
{
fieldsOffset[i] = fieldsOffset[i - 1];
- if (fmt[i - 1] == 'b')
+ if (fmt[i - 1] == FT_BYTE) // byte fields
fieldsOffset[i] += 1;
- else
+ else if (fmt[i - 1] == FT_LONG)
+ fieldsOffset[i] += 8;
+ else // 4 byte fields (int32/float/strings)
fieldsOffset[i] += 4;
}