Make fs::path::string() always return utf-8 string

This commit is contained in:
Chun Kuan Lee 2018-08-04 16:39:14 +00:00
parent 920c090f63
commit 2c3eade704
4 changed files with 6 additions and 6 deletions

View File

@ -10,7 +10,6 @@
#include <boost/filesystem.hpp> #include <boost/filesystem.hpp>
#include <boost/filesystem/fstream.hpp> #include <boost/filesystem/fstream.hpp>
#include <boost/filesystem/detail/utf8_codecvt_facet.hpp>
/** Filesystem operations and types */ /** Filesystem operations and types */
namespace fs = boost::filesystem; namespace fs = boost::filesystem;

View File

@ -60,8 +60,6 @@
#include <QFontDatabase> #include <QFontDatabase>
#endif #endif
static fs::detail::utf8_codecvt_facet utf8;
namespace GUIUtil { namespace GUIUtil {
QString dateTimeStr(const QDateTime &date) QString dateTimeStr(const QDateTime &date)
@ -764,12 +762,12 @@ void setClipboard(const QString& str)
fs::path qstringToBoostPath(const QString &path) fs::path qstringToBoostPath(const QString &path)
{ {
return fs::path(path.toStdString(), utf8); return fs::path(path.toStdString());
} }
QString boostPathToQString(const fs::path &path) QString boostPathToQString(const fs::path &path)
{ {
return QString::fromStdString(path.string(utf8)); return QString::fromStdString(path.string());
} }
QString formatDurationStr(int secs) QString formatDurationStr(int secs)

View File

@ -1206,7 +1206,11 @@ void SetupEnvironment()
// A dummy locale is used to extract the internal default locale, used by // A dummy locale is used to extract the internal default locale, used by
// fs::path, which is then used to explicitly imbue the path. // fs::path, which is then used to explicitly imbue the path.
std::locale loc = fs::path::imbue(std::locale::classic()); std::locale loc = fs::path::imbue(std::locale::classic());
#ifndef WIN32
fs::path::imbue(loc); fs::path::imbue(loc);
#else
fs::path::imbue(std::locale(loc, new std::codecvt_utf8_utf16<wchar_t>()));
#endif
} }
bool SetupNetworking() bool SetupNetworking()

View File

@ -54,7 +54,6 @@ EXPECTED_BOOST_INCLUDES=(
boost/chrono/chrono.hpp boost/chrono/chrono.hpp
boost/date_time/posix_time/posix_time.hpp boost/date_time/posix_time/posix_time.hpp
boost/filesystem.hpp boost/filesystem.hpp
boost/filesystem/detail/utf8_codecvt_facet.hpp
boost/filesystem/fstream.hpp boost/filesystem/fstream.hpp
boost/multi_index/hashed_index.hpp boost/multi_index/hashed_index.hpp
boost/multi_index/ordered_index.hpp boost/multi_index/ordered_index.hpp