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:
@@ -166,12 +166,12 @@ QString CppEditorSupport::fileName() const
|
||||
return m_textEditor->document()->filePath();
|
||||
}
|
||||
|
||||
QString CppEditorSupport::contents() const
|
||||
QByteArray CppEditorSupport::contents() const
|
||||
{
|
||||
const int editorRev = editorRevision();
|
||||
if (m_cachedContentsEditorRevision != editorRev && !m_fileIsBeingReloaded) {
|
||||
m_cachedContentsEditorRevision = editorRev;
|
||||
m_cachedContents = m_textEditor->textDocument()->contents();
|
||||
m_cachedContents = m_textEditor->textDocument()->contents().toUtf8();
|
||||
}
|
||||
|
||||
return m_cachedContents;
|
||||
@@ -430,7 +430,7 @@ SemanticInfo::Source CppEditorSupport::currentSource(bool force)
|
||||
|
||||
const Snapshot snapshot = m_modelManager->snapshot();
|
||||
|
||||
QString code;
|
||||
QByteArray code;
|
||||
if (force || m_lastSemanticInfo.revision != editorRevision())
|
||||
code = contents(); // get the source code only when needed.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user