mirror of
https://github.com/mangosfour/server.git
synced 2025-12-13 22:37:03 +00:00
[10601] Amother attemp fix locale structures corruption.
Possible real source of problem: existing in code mixed std:: structure templates instanting under pack pragma and out. And this incompatible structure layouts wrongly mixed used by GCC. So all std:: strcutures used moved out from pack pragma guards.
This commit is contained in:
parent
2fe45365c0
commit
0236699b0a
6 changed files with 50 additions and 52 deletions
|
|
@ -516,13 +516,6 @@ struct GameObjectInfo
|
|||
}
|
||||
};
|
||||
|
||||
// By unknown reason GCC generate wrong code for locale structures declared in header after pack pragma
|
||||
struct GameObjectLocale
|
||||
{
|
||||
std::vector<std::string> Name;
|
||||
std::vector<std::string> CastBarCaption;
|
||||
};
|
||||
|
||||
// GCC have alternative #pragma pack() syntax and old gcc version not support pack(pop), also any gcc version not support it at some platform
|
||||
#if defined( __GNUC__ )
|
||||
#pragma pack()
|
||||
|
|
@ -530,6 +523,12 @@ struct GameObjectLocale
|
|||
#pragma pack(pop)
|
||||
#endif
|
||||
|
||||
struct GameObjectLocale
|
||||
{
|
||||
std::vector<std::string> Name;
|
||||
std::vector<std::string> CastBarCaption;
|
||||
};
|
||||
|
||||
// client side GO show states
|
||||
enum GOState
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue