diff --git a/src/game/GameObject.h b/src/game/GameObject.h index 08e07961878..e09c24c2a0a 100644 --- a/src/game/GameObject.h +++ b/src/game/GameObject.h @@ -516,6 +516,13 @@ struct GameObjectInfo } }; +// By unknown reason GCC generate wrong code for locale structures declared in header after pack pragma +struct GameObjectLocale +{ + std::vector Name; + std::vector 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() @@ -523,12 +530,6 @@ struct GameObjectInfo #pragma pack(pop) #endif -struct GameObjectLocale -{ - std::vector Name; - std::vector CastBarCaption; -}; - // client side GO show states enum GOState { diff --git a/src/game/ItemPrototype.h b/src/game/ItemPrototype.h index fde8ebe2d6e..10e60d85e5e 100644 --- a/src/game/ItemPrototype.h +++ b/src/game/ItemPrototype.h @@ -656,6 +656,7 @@ struct ItemPrototype bool IsConjuredConsumable() const { return Class == ITEM_CLASS_CONSUMABLE && (Flags & ITEM_FLAGS_CONJURED); } }; +// By unknown reason GCC generate wrong code for locale structures declared in header after pack pragma struct ItemLocale { std::vector Name; diff --git a/src/game/NPCHandler.h b/src/game/NPCHandler.h index b842cb81ea7..680188cd107 100644 --- a/src/game/NPCHandler.h +++ b/src/game/NPCHandler.h @@ -34,6 +34,20 @@ struct PageText uint32 Next_Page; }; +// By unknown reason GCC generate wrong code for locale structures declared in header after pack pragma +struct PageTextLocale +{ + std::vector Text; +}; + +struct NpcTextLocale +{ + NpcTextLocale() { Text_0.resize(8); Text_1.resize(8); } + + std::vector > Text_0; + std::vector > Text_1; +}; + // 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() @@ -61,16 +75,4 @@ struct GossipText GossipTextOption Options[8]; }; -struct PageTextLocale -{ - std::vector Text; -}; - -struct NpcTextLocale -{ - NpcTextLocale() { Text_0.resize(8); Text_1.resize(8); } - - std::vector > Text_0; - std::vector > Text_1; -}; #endif diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index ca2b4407dbb..88ce2268ed9 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "10598" + #define REVISION_NR "10599" #endif // __REVISION_NR_H__