1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-03-30 16:20:21 +00:00

Fix ContentSelector usage with non-ASCII paths

This commit is contained in:
Andrei Kortunov 2023-02-06 13:36:02 +04:00
parent 72efd3a650
commit 5836d27928
2 changed files with 4 additions and 2 deletions

View File

@ -6,6 +6,7 @@
#include <components/contentselector/model/contentmodel.hpp>
#include <components/contentselector/model/esmfile.hpp>
#include <components/contentselector/view/contentselector.hpp>
#include <components/files/qtconversion.hpp>
#include <string>
@ -32,7 +33,7 @@ void CSVDoc::FileDialog::addFiles(const std::vector<std::filesystem::path>& data
{
for (auto iter = dataDirs.rbegin(); iter != dataDirs.rend(); ++iter)
{
QString path = QString::fromUtf8(iter->string().c_str());
QString path = Files::pathToQString(*iter);
mSelector->addFiles(path);
}
mSelector->sortFiles();

View File

@ -8,6 +8,7 @@
#include <QDir>
#include <components/esm3/esmreader.hpp>
#include <components/files/qtconversion.hpp>
ContentSelectorModel::ContentModel::ContentModel(QObject* parent, QIcon warningIcon, bool showOMWScripts)
: QAbstractTableModel(parent)
@ -468,7 +469,7 @@ void ContentSelectorModel::ContentModel::addFiles(const QString& path, bool newf
ESM::ESMReader fileReader;
ToUTF8::Utf8Encoder encoder(ToUTF8::calculateEncoding(mEncoding.toStdString()));
fileReader.setEncoder(&encoder);
fileReader.open(std::string(dir.absoluteFilePath(path2).toUtf8().constData()));
fileReader.open(Files::pathFromQString(dir.absoluteFilePath(path2)));
EsmFile* file = new EsmFile(path2);