From 7bbf150b445dc8eb9ebefa740b30f6e8268c7412 Mon Sep 17 00:00:00 2001 From: Pierre Jeanjean Date: Sun, 2 Feb 2020 15:37:05 +0100 Subject: [PATCH] Fix charset detection and conversion issues --- libaegisub/common/line_iterator.cpp | 1 - src/charset_detect.cpp | 5 ++++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/libaegisub/common/line_iterator.cpp b/libaegisub/common/line_iterator.cpp index b288c831b..21754a41c 100644 --- a/libaegisub/common/line_iterator.cpp +++ b/libaegisub/common/line_iterator.cpp @@ -22,7 +22,6 @@ namespace agi { line_iterator_base::line_iterator_base(std::istream &stream, std::string encoding) : stream(&stream) { - boost::to_lower(encoding); if (encoding != "utf-8") { agi::charset::IconvWrapper c("utf-8", encoding.c_str()); c.Convert("\r", 1, reinterpret_cast(&cr), sizeof(int)); diff --git a/src/charset_detect.cpp b/src/charset_detect.cpp index 9fd27e175..aab4ef7de 100644 --- a/src/charset_detect.cpp +++ b/src/charset_detect.cpp @@ -47,8 +47,11 @@ namespace CharSetDetect { std::string GetEncoding(agi::fs::path const& filename) { auto encoding = agi::charset::Detect(filename); - if (!encoding.empty()) + if (!encoding.empty()) { + if (!encoding.compare("ASCII")) + encoding = "utf-8"; return encoding; + } auto choices = agi::charset::GetEncodingsList(); int choice = wxGetSingleChoiceIndex(