1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-26 22:57:00 +02:00

Merge pull request #1639 from IvanSavenko/fix_localized_text_files

Fix loading of non-ASCII text files
This commit is contained in:
Ivan Savenko 2023-03-05 22:49:29 +02:00 committed by GitHub
commit 674c9a9eac
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 7 deletions

View File

@ -99,13 +99,14 @@ protected:
}
};
CLegacyConfigParser::CLegacyConfigParser(std::string URI):
CLegacyConfigParser(CResourceHandler::get()->load(ResourceID(URI, EResType::TEXT)))
CLegacyConfigParser::CLegacyConfigParser(std::string URI)
{
}
ResourceID resource(URI, EResType::TEXT);
auto input = CResourceHandler::get()->load(resource);
std::string modName = VLC->modh->findResourceOrigin(resource);
std::string language = VLC->modh->getModLanguage(modName);
fileEncoding = Languages::getLanguageOptions(language).encoding;
CLegacyConfigParser::CLegacyConfigParser(const std::unique_ptr<CInputStream> & input)
{
data.reset(new char[input->getSize()]);
input->read(reinterpret_cast<uint8_t*>(data.get()), input->getSize());

View File

@ -34,6 +34,7 @@ class DLL_LINKAGE CLegacyConfigParser
/// reads "raw" string without encoding conversion
std::string readRawString();
public:
/// read one entry from current line. Return ""/0 if end of line reached
std::string readString();
@ -56,8 +57,6 @@ public:
bool endLine();
explicit CLegacyConfigParser(std::string URI);
private:
explicit CLegacyConfigParser(const std::unique_ptr<CInputStream> & input);
};
class CGeneralTextHandler;