diff --git a/src/plugins/texteditor/generichighlighter/highlightdefinition.cpp b/src/plugins/texteditor/generichighlighter/highlightdefinition.cpp index 043e2c0eed2..744744a71d6 100644 --- a/src/plugins/texteditor/generichighlighter/highlightdefinition.cpp +++ b/src/plugins/texteditor/generichighlighter/highlightdefinition.cpp @@ -55,6 +55,11 @@ HighlightDefinition::HighlightDefinition() : HighlightDefinition::~HighlightDefinition() {} +bool HighlightDefinition::isValid() const +{ + return !m_initialContext.isEmpty(); +} + template QSharedPointer HighlightDefinition:: GenericHelper::create(const QString &name, Container &container) diff --git a/src/plugins/texteditor/generichighlighter/highlightdefinition.h b/src/plugins/texteditor/generichighlighter/highlightdefinition.h index 029eaa7e5b0..b178a2e4760 100644 --- a/src/plugins/texteditor/generichighlighter/highlightdefinition.h +++ b/src/plugins/texteditor/generichighlighter/highlightdefinition.h @@ -51,6 +51,8 @@ public: HighlightDefinition(); ~HighlightDefinition(); + bool isValid() const; + QSharedPointer createKeywordList(const QString &list); QSharedPointer keywordList(const QString &list); diff --git a/src/plugins/texteditor/generichighlighter/highlightdefinitionhandler.cpp b/src/plugins/texteditor/generichighlighter/highlightdefinitionhandler.cpp index cc123bcf209..a2591322913 100644 --- a/src/plugins/texteditor/generichighlighter/highlightdefinitionhandler.cpp +++ b/src/plugins/texteditor/generichighlighter/highlightdefinitionhandler.cpp @@ -449,7 +449,7 @@ void HighlightDefinitionHandler::processIncludeRules(const QSharedPointer &externalDefinition = Manager::instance()->definition(id); - if (externalDefinition.isNull()) + if (externalDefinition.isNull() || !externalDefinition->isValid()) continue; sourceContext = externalDefinition->initialContext(); diff --git a/src/plugins/texteditor/plaintexteditor.cpp b/src/plugins/texteditor/plaintexteditor.cpp index d1abadb6076..90a30a23814 100644 --- a/src/plugins/texteditor/plaintexteditor.cpp +++ b/src/plugins/texteditor/plaintexteditor.cpp @@ -180,7 +180,7 @@ void PlainTextEditorWidget::configure(const Core::MimeType &mimeType) m_isMissingSyntaxDefinition = false; const QSharedPointer &definition = Manager::instance()->definition(definitionId); - if (!definition.isNull()) { + if (!definition.isNull() && definition->isValid()) { highlighter->setDefaultContext(definition->initialContext()); m_commentDefinition.setAfterWhiteSpaces(definition->isCommentAfterWhiteSpaces());