diff --git a/src/plugins/texteditor/semantichighlighter.cpp b/src/plugins/texteditor/semantichighlighter.cpp index 9dded606ba5..17cfc1374bd 100644 --- a/src/plugins/texteditor/semantichighlighter.cpp +++ b/src/plugins/texteditor/semantichighlighter.cpp @@ -112,7 +112,7 @@ void SemanticHighlighter::incrementalApplyExtraAdditionalFormats( if (nextBlockNumber != blockNumber) break; } - highlighter->setExtraFormats(b, formats); + highlighter->setExtraFormats(b, std::move(formats)); b = b.next(); ++currentBlockNumber; } diff --git a/src/plugins/texteditor/syntaxhighlighter.cpp b/src/plugins/texteditor/syntaxhighlighter.cpp index 06802461350..8f7f1f153e6 100644 --- a/src/plugins/texteditor/syntaxhighlighter.cpp +++ b/src/plugins/texteditor/syntaxhighlighter.cpp @@ -662,10 +662,10 @@ static bool byStartOfRange(const QTextLayout::FormatRange &range, const QTextLay return range.start < other.start; } -// The formats is passed in by reference in order to prevent unnecessary copying of its items. +// The formats is passed in by rvalue reference in order to prevent unnecessary copying of its items. // After this function returns, the list is modified, and should be considered invalidated! void SyntaxHighlighter::setExtraFormats(const QTextBlock &block, - QVector &formats) + QVector &&formats) { Q_D(SyntaxHighlighter); diff --git a/src/plugins/texteditor/syntaxhighlighter.h b/src/plugins/texteditor/syntaxhighlighter.h index f55b9f9f004..bbd23a77d41 100644 --- a/src/plugins/texteditor/syntaxhighlighter.h +++ b/src/plugins/texteditor/syntaxhighlighter.h @@ -63,7 +63,7 @@ public: void setDocument(QTextDocument *doc); QTextDocument *document() const; - void setExtraFormats(const QTextBlock &block, QVector &formats); + void setExtraFormats(const QTextBlock &block, QVector &&formats); void clearExtraFormats(const QTextBlock &block); static QList generateColors(int n, const QColor &background);