FileSearchResult: Use FilePath for fileName

This saves about 2 seconds out of 5 seconds spent in
displayResult() for converting from QString into
FilePath in main thread (use case: gitgrep with
2 million hits).

Change-Id: I6334e8559986501c34c90a5c7c6b4acc9a6953e0
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Jarek Kobus
2022-09-05 19:06:37 +02:00
parent b842620810
commit a9eb732ce6
6 changed files with 21 additions and 17 deletions

View File

@@ -190,7 +190,7 @@ void FileSearch::operator()(QFutureInterface<FileSearchResultList> &futureInterf
}
if (equal) {
const QString resultItemText = clippedText(chunk, MAX_LINE_SIZE);
results << FileSearchResult(item.filePath,
results << FileSearchResult(FilePath::fromString(item.filePath),
lineNr,
resultItemText,
regionPtr - chunkPtr,
@@ -268,7 +268,7 @@ void FileSearchRegExp::operator()(QFutureInterface<FileSearchResultList> &future
int pos = 0;
while ((match = doGuardedMatch(line, pos)).hasMatch()) {
pos = match.capturedStart();
results << FileSearchResult(item.filePath, lineNr, resultItemText,
results << FileSearchResult(FilePath::fromString(item.filePath), lineNr, resultItemText,
pos, match.capturedLength(),
match.capturedTexts());
if (match.capturedLength() == 0)