Fixed the current progress value of the background parser.

This commit is contained in:
Roberto Raggi
2008-12-03 16:18:33 +01:00
parent 9c19ec02a6
commit f1feb0e25c

View File

@@ -505,7 +505,7 @@ CppModelManager::ProjectInfo *CppModelManager::projectInfo(ProjectExplorer::Proj
QFuture<void> CppModelManager::refreshSourceFiles(const QStringList &sourceFiles)
{
if (qgetenv("QTCREATOR_NO_CODE_INDEXER").isNull()) {
if (! sourceFiles.isEmpty() && qgetenv("QTCREATOR_NO_CODE_INDEXER").isNull()) {
const QMap<QString, QByteArray> workingCopy = buildWorkingCopyList();
QFuture<void> result = QtConcurrent::run(&CppModelManager::parse, this,
@@ -657,6 +657,8 @@ void CppModelManager::parse(QFutureInterface<void> &future,
QStringList files,
QMap<QString, QByteArray> workingCopy)
{
Q_ASSERT(! files.isEmpty());
// Change the priority of the background parser thread to idle.
QThread::currentThread()->setPriority(QThread::IdlePriority);
@@ -698,6 +700,8 @@ void CppModelManager::parse(QFutureInterface<void> &future,
#endif
}
future.setProgressValue(files.size());
// Restore the previous thread priority.
QThread::currentThread()->setPriority(QThread::NormalPriority);
}