From 65ea6106fd8b1b21ebb190d29f6f5761f4c4e66a Mon Sep 17 00:00:00 2001 From: tatiana-yan Date: Tue, 30 Jun 2020 15:57:50 +0300 Subject: [PATCH] [editor] Fix variables initialization order: XMLFeature static variables should not depend from kLanguages(string_utf8_multilang.cpp). --- editor/xml_feature.cpp | 15 ++++----------- editor/xml_feature.hpp | 14 +++++++------- 2 files changed, 11 insertions(+), 18 deletions(-) diff --git a/editor/xml_feature.cpp b/editor/xml_feature.cpp index e375ed6737..9ef0b67a13 100644 --- a/editor/xml_feature.cpp +++ b/editor/xml_feature.cpp @@ -88,17 +88,6 @@ void ValidateElement(pugi::xml_node const & nodeOrWay) namespace editor { -char const * const XMLFeature::kDefaultLang = - StringUtf8Multilang::GetLangByCode(StringUtf8Multilang::kDefaultCode); -char const * const XMLFeature::kIntlLang = - StringUtf8Multilang::GetLangByCode(StringUtf8Multilang::kInternationalCode); -char const * const XMLFeature::kAltLang = - StringUtf8Multilang::GetLangByCode(StringUtf8Multilang::kAltNameCode); -char const * const XMLFeature::kOldLang = - StringUtf8Multilang::GetLangByCode(StringUtf8Multilang::kOldNameCode); -char const * const XMLFeature::kIntlName = XMLFeature::kIntlLang; -char const * const XMLFeature::kAltName = XMLFeature::kAltLang; -char const * const XMLFeature::kOldName = XMLFeature::kOldLang; XMLFeature::XMLFeature(Type const type) { @@ -244,6 +233,10 @@ vector XMLFeature::GetGeometry() const string XMLFeature::GetName(string const & lang) const { + ASSERT_EQUAL(kDefaultLang, StringUtf8Multilang::GetLangByCode(StringUtf8Multilang::kDefaultCode), ()); + ASSERT_EQUAL(kIntlLang, StringUtf8Multilang::GetLangByCode(StringUtf8Multilang::kInternationalCode), ()); + ASSERT_EQUAL(kAltLang, StringUtf8Multilang::GetLangByCode(StringUtf8Multilang::kAltNameCode), ()); + ASSERT_EQUAL(kOldLang, StringUtf8Multilang::GetLangByCode(StringUtf8Multilang::kOldNameCode), ()); if (lang == kIntlLang) return GetTagValue(kIntlName); if (lang == kAltLang) diff --git a/editor/xml_feature.hpp b/editor/xml_feature.hpp index 38aa9c901b..9b98f011e8 100644 --- a/editor/xml_feature.hpp +++ b/editor/xml_feature.hpp @@ -32,13 +32,13 @@ class XMLFeature { static constexpr char const * kDefaultName = "name"; static constexpr char const * kLocalName = "name:"; - static char const * const kIntlName; - static char const * const kAltName; - static char const * const kOldName; - static char const * const kDefaultLang; - static char const * const kIntlLang; - static char const * const kAltLang; - static char const * const kOldLang; + static constexpr char const * kIntlName = "int_name"; + static constexpr char const * kAltName = "alt_name"; + static constexpr char const * kOldName = "old_name"; + static constexpr char const * kDefaultLang = "default"; + static constexpr char const * kIntlLang = kIntlName; + static constexpr char const * kAltLang = kAltName; + static constexpr char const * kOldLang = kOldName; public: // Used in point to string serialization.