FileApiReader: Make shutdown faster

Check more often for canceled future.

Make more functions static.

Fixes: QTCREATORBUG-27729
Change-Id: I8dd787acea6343008c7515fb6a4fdfde50b37aee
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
Jarek Kobus
2023-10-06 14:47:46 +02:00
parent e4ae894c96
commit ee48dba19e
3 changed files with 243 additions and 184 deletions

View File

@@ -252,7 +252,8 @@ void FileApiReader::endState(const FilePath &replyFilePath, bool restoredFromBac
const FilePath sourceDirectory = m_parameters.sourceDirectory;
const FilePath buildDirectory = m_parameters.buildDirectory;
const QString cmakeBuildType = m_parameters.cmakeBuildType == "Build" ? "" : m_parameters.cmakeBuildType;
const QString cmakeBuildType = m_parameters.cmakeBuildType == "Build"
? "" : m_parameters.cmakeBuildType;
m_lastReplyTimestamp = replyFilePath.lastModified();
@@ -264,10 +265,12 @@ void FileApiReader::endState(const FilePath &replyFilePath, bool restoredFromBac
replyFilePath,
cmakeBuildType,
result->errorMessage);
if (result->errorMessage.isEmpty())
*result = extractData(data, sourceDirectory, buildDirectory);
else
if (result->errorMessage.isEmpty()) {
*result = extractData(QFuture<void>(promise.future()), data,
sourceDirectory, buildDirectory);
} else {
qWarning() << result->errorMessage;
}
promise.addResult(result);
});