aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2016-11-07 11:00:59 +0100
committerKai Koehne <kai.koehne@qt.io>2016-11-08 08:03:56 +0000
commit80a69c09062f462f65dfd07c32bd72920f250daa (patch)
treed0381a2848edd5b22485ffc6cc8ff509d69c46b4 /src
parent4b67847fe6ea57f25ef6321bbf9d14825e979ae5 (diff)
Assume UTF-8 encoding for qbs project files
Like QML has been doing forever. Task-number: QBS-941 Change-Id: I0e46003740b68f2172c623043a0861910c1fe29d Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/lib/corelib/api/projectfileupdater.cpp4
-rw-r--r--src/lib/corelib/language/itemreadervisitorstate.cpp4
-rw-r--r--src/lib/corelib/language/scriptengine.cpp4
3 files changed, 8 insertions, 4 deletions
diff --git a/src/lib/corelib/api/projectfileupdater.cpp b/src/lib/corelib/api/projectfileupdater.cpp
index 45078df33..b9725a608 100644
--- a/src/lib/corelib/api/projectfileupdater.cpp
+++ b/src/lib/corelib/api/projectfileupdater.cpp
@@ -166,7 +166,7 @@ void ProjectFileUpdater::apply()
QByteArray rawContent = file.readAll();
const LineEndingType origLineEndingType = guessLineEndingType(rawContent);
convertToUnixLineEndings(&rawContent, origLineEndingType);
- QString content = QString::fromLocal8Bit(rawContent);
+ QString content = QString::fromUtf8(rawContent);
file.close();
Engine engine;
@@ -191,7 +191,7 @@ void ProjectFileUpdater::apply()
.arg(m_projectFile, file.errorString()));
}
file.resize(0);
- rawContent = content.toLocal8Bit();
+ rawContent = content.toUtf8();
convertFromUnixLineEndings(&rawContent, origLineEndingType);
file.write(rawContent);
}
diff --git a/src/lib/corelib/language/itemreadervisitorstate.cpp b/src/lib/corelib/language/itemreadervisitorstate.cpp
index 7c0ddd6e4..58aec11e7 100644
--- a/src/lib/corelib/language/itemreadervisitorstate.cpp
+++ b/src/lib/corelib/language/itemreadervisitorstate.cpp
@@ -130,7 +130,9 @@ Item *ItemReaderVisitorState::readFile(const QString &filePath, const QStringLis
throw ErrorInfo(Tr::tr("Cannot open '%1'.").arg(filePath));
m_filesRead.insert(filePath);
- const QString code = QTextStream(&file).readAll();
+ QTextStream stream(&file);
+ stream.setCodec("UTF-8");
+ const QString &code = stream.readAll();
QbsQmlJS::Lexer lexer(cacheValue.engine());
lexer.setCode(code, 1);
QbsQmlJS::Parser parser(cacheValue.engine());
diff --git a/src/lib/corelib/language/scriptengine.cpp b/src/lib/corelib/language/scriptengine.cpp
index bb7fb3571..b383504b8 100644
--- a/src/lib/corelib/language/scriptengine.cpp
+++ b/src/lib/corelib/language/scriptengine.cpp
@@ -258,7 +258,9 @@ void ScriptEngine::importFile(const QString &filePath, QScriptValue &targetObjec
QFile file(filePath);
if (Q_UNLIKELY(!file.open(QFile::ReadOnly)))
throw ErrorInfo(tr("Cannot open '%1'.").arg(filePath));
- const QString sourceCode = QTextStream(&file).readAll();
+ QTextStream stream(&file);
+ stream.setCodec("UTF-8");
+ const QString sourceCode = stream.readAll();
file.close();
m_currentDirPathStack.push(FileInfo::path(filePath));
m_scriptImporter->importSourceCode(sourceCode, filePath, targetObject);