diff --git a/src/plugins/cpptools/builtineditordocumentparser.cpp b/src/plugins/cpptools/builtineditordocumentparser.cpp index 55c9c6d9ed5..d802e672505 100644 --- a/src/plugins/cpptools/builtineditordocumentparser.cpp +++ b/src/plugins/cpptools/builtineditordocumentparser.cpp @@ -50,8 +50,10 @@ static QByteArray overwrittenToolchainDefines(const ProjectPart &projectPart) return defines; } -BuiltinEditorDocumentParser::BuiltinEditorDocumentParser(const QString &filePath) +BuiltinEditorDocumentParser::BuiltinEditorDocumentParser(const QString &filePath, + int fileSizeLimitInMb) : BaseEditorDocumentParser(filePath) + , m_fileSizeLimitInMb(fileSizeLimitInMb) { qRegisterMetaType("CPlusPlus::Snapshot"); } @@ -191,6 +193,7 @@ void BuiltinEditorDocumentParser::updateImpl(const QFutureInterface &futur if (releaseSourceAndAST_) doc->releaseSourceAndAST(); }); + sourceProcessor.setFileSizeLimitInMb(m_fileSizeLimitInMb); sourceProcessor.setCancelChecker([future]() { return future.isCanceled(); }); diff --git a/src/plugins/cpptools/builtineditordocumentparser.h b/src/plugins/cpptools/builtineditordocumentparser.h index 7793ebfbe41..3f53ae765ed 100644 --- a/src/plugins/cpptools/builtineditordocumentparser.h +++ b/src/plugins/cpptools/builtineditordocumentparser.h @@ -39,7 +39,7 @@ class CPPTOOLS_EXPORT BuiltinEditorDocumentParser : public BaseEditorDocumentPar Q_OBJECT public: - BuiltinEditorDocumentParser(const QString &filePath); + BuiltinEditorDocumentParser(const QString &filePath, int fileSizeLimitInMb = -1); bool releaseSourceAndAST() const; void setReleaseSourceAndAST(bool release); @@ -79,6 +79,8 @@ private: bool m_releaseSourceAndAST = true; ExtraState m_extraState; + + const int m_fileSizeLimitInMb = -1; }; } // namespace CppTools diff --git a/src/plugins/cpptools/builtineditordocumentprocessor.cpp b/src/plugins/cpptools/builtineditordocumentprocessor.cpp index daf7ebf762f..42daa679638 100644 --- a/src/plugins/cpptools/builtineditordocumentprocessor.cpp +++ b/src/plugins/cpptools/builtineditordocumentprocessor.cpp @@ -163,7 +163,8 @@ BuiltinEditorDocumentProcessor::BuiltinEditorDocumentProcessor( TextEditor::TextDocument *document, bool enableSemanticHighlighter) : BaseEditorDocumentProcessor(document->document(), document->filePath().toString()) - , m_parser(new BuiltinEditorDocumentParser(document->filePath().toString())) + , m_parser(new BuiltinEditorDocumentParser(document->filePath().toString(), + indexerFileSizeLimitInMb())) , m_codeWarningsUpdated(false) , m_semanticHighlighter(enableSemanticHighlighter ? new CppTools::SemanticHighlighter(document)