diff --git a/src/libs/utils/filesearch.cpp b/src/libs/utils/filesearch.cpp index c576e32f973..c38d1606da3 100644 --- a/src/libs/utils/filesearch.cpp +++ b/src/libs/utils/filesearch.cpp @@ -178,7 +178,8 @@ void runFileSearch(QFutureInterface &future, } ++numFilesSearched; - if (future.isProgressUpdateNeeded()) { + if (future.isProgressUpdateNeeded() + || future.progressValue() == 0 /*workaround for regression in Qt*/) { if (!results.isEmpty()) { future.reportResult(results); results.clear(); @@ -256,7 +257,8 @@ void runFileSearchRegExp(QFutureInterface &future, ++lineNr; } ++numFilesSearched; - if (future.isProgressUpdateNeeded()) { + if (future.isProgressUpdateNeeded() + || future.progressValue() == 0 /*workaround for regression in Qt*/) { if (!results.isEmpty()) { future.reportResult(results); results.clear(); diff --git a/src/plugins/locator/directoryfilter.cpp b/src/plugins/locator/directoryfilter.cpp index 2779ebae145..45d1319a653 100644 --- a/src/plugins/locator/directoryfilter.cpp +++ b/src/plugins/locator/directoryfilter.cpp @@ -203,7 +203,8 @@ void DirectoryFilter::refresh(QFutureInterface &future) QStringList filesFound; while (!future.isCanceled() && it.hasNext()) { filesFound << it.next(); - if (future.isProgressUpdateNeeded()) { + if (future.isProgressUpdateNeeded() + || future.progressValue() == 0 /*workaround for regression in Qt*/) { future.setProgressValueAndText(it.currentProgress(), tr("%1 filter update: %n files", 0, filesFound.size()).arg(m_name)); }