diff options
-rw-r--r-- | src/plugins/texteditor/generichighlighter/specificrules.cpp | 8 | ||||
-rw-r--r-- | src/plugins/texteditor/generichighlighter/specificrules.h | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/plugins/texteditor/generichighlighter/specificrules.cpp b/src/plugins/texteditor/generichighlighter/specificrules.cpp index 8c4b80dc66c..82a9de23ca5 100644 --- a/src/plugins/texteditor/generichighlighter/specificrules.cpp +++ b/src/plugins/texteditor/generichighlighter/specificrules.cpp @@ -247,6 +247,14 @@ bool RegExprRule::doMatchSucceed(const QString &text, return false; } +RegExprRule *RegExprRule::doClone() const +{ + auto clone = new RegExprRule(*this); + if (m_progress) + m_progress->trackRule(clone); + return clone; +} + // Keyword KeywordRule::KeywordRule(const QSharedPointer<HighlightDefinition> &definition) : m_overrideGlobal(false), diff --git a/src/plugins/texteditor/generichighlighter/specificrules.h b/src/plugins/texteditor/generichighlighter/specificrules.h index 63beaf8df93..a5533dcd0dd 100644 --- a/src/plugins/texteditor/generichighlighter/specificrules.h +++ b/src/plugins/texteditor/generichighlighter/specificrules.h @@ -124,7 +124,7 @@ private: virtual bool doMatchSucceed(const QString &text, const int length, ProgressData *progress); - virtual RegExprRule *doClone() const { return new RegExprRule(*this); } + virtual RegExprRule *doClone() const; virtual void doReplaceExpressions(const QStringList &captures); virtual void doProgressFinished(); |