mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-15 23:20:36 +01:00
Core/DataStores: Fixed string fields containing empty strings in some 10.0.5 db2 files
Closes #28805
This commit is contained in:
@@ -575,13 +575,19 @@ char* DB2FileLoaderRegularImpl::AutoProduceStrings(char** indexTable, uint32 ind
|
||||
break;
|
||||
case FT_STRING:
|
||||
{
|
||||
((LocalizedString*)(&recordData[offset]))->Str[locale] = stringPool + (RecordGetString(rawRecord, x, z) - (char const*)_stringTable);
|
||||
char const* string = RecordGetString(rawRecord, x, z);
|
||||
if (string >= reinterpret_cast<char const*>(_stringTable)) // ensure string is inside _stringTable
|
||||
reinterpret_cast<LocalizedString*>(&recordData[offset])->Str[locale] = stringPool + (string - reinterpret_cast<char const*>(_stringTable));
|
||||
|
||||
offset += sizeof(LocalizedString);
|
||||
break;
|
||||
}
|
||||
case FT_STRING_NOT_LOCALIZED:
|
||||
{
|
||||
*((char**)(&recordData[offset])) = stringPool + (RecordGetString(rawRecord, x, z) - (char const*)_stringTable);
|
||||
char const* string = RecordGetString(rawRecord, x, z);
|
||||
if (string >= reinterpret_cast<char const*>(_stringTable)) // ensure string is inside _stringTable
|
||||
*reinterpret_cast<char**>(&recordData[offset]) = stringPool + (string - reinterpret_cast<char const*>(_stringTable));
|
||||
|
||||
offset += sizeof(char*);
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user