forked from qt-creator/qt-creator
C++: change working-copy to work on UTF-8 encoded QByteArrays.
These not only take less space than UTF-16 encoded QStrings, but due to the caching in the CppEditorSupport also take less time to build. This patch also fixes a number of possible encoding issues, where files and constant strings were (falsely) assumed to be UTF-8. Change-Id: Ib6f91c9a94ebed5b5dfbd4eb2998825c62c72784 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com> Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
@@ -2702,13 +2702,13 @@ static CPlusPlus::Document::Ptr getParsedDocument(const QString &fileName,
|
||||
const CppTools::CppModelManagerInterface::WorkingCopy &workingCopy,
|
||||
const CPlusPlus::Snapshot &snapshot)
|
||||
{
|
||||
QString src;
|
||||
QByteArray src;
|
||||
if (workingCopy.contains(fileName)) {
|
||||
src = workingCopy.source(fileName);
|
||||
} else {
|
||||
FileReader reader;
|
||||
if (reader.fetch(fileName)) // ### FIXME error reporting
|
||||
src = QString::fromLocal8Bit(reader.data()); // ### FIXME encoding
|
||||
src = QString::fromLocal8Bit(reader.data()).toUtf8();
|
||||
}
|
||||
|
||||
CPlusPlus::Document::Ptr doc = snapshot.preprocessedDocument(src, fileName);
|
||||
|
||||
Reference in New Issue
Block a user