diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2016-11-07 11:00:59 +0100 |
---|---|---|
committer | Kai Koehne <kai.koehne@qt.io> | 2016-11-08 08:03:56 +0000 |
commit | 80a69c09062f462f65dfd07c32bd72920f250daa (patch) | |
tree | d0381a2848edd5b22485ffc6cc8ff509d69c46b4 /src | |
parent | 4b67847fe6ea57f25ef6321bbf9d14825e979ae5 (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.cpp | 4 | ||||
-rw-r--r-- | src/lib/corelib/language/itemreadervisitorstate.cpp | 4 | ||||
-rw-r--r-- | src/lib/corelib/language/scriptengine.cpp | 4 |
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); |