summaryrefslogtreecommitdiff
path: root/src/tools/clangrefactoringbackend
diff options
context:
space:
mode:
authorMarco Bubke <marco.bubke@qt.io>2019-04-10 18:21:22 +0200
committerMarco Bubke <marco.bubke@qt.io>2019-04-23 09:08:50 +0000
commit16d5bf0afcee6c080d78219842c88f377c4bc6ce (patch)
tree045afe2361d1857034301cdfc8d692e0f090967f /src/tools/clangrefactoringbackend
parent3fc8217113813abd06878d46d57cc078612e9e4e (diff)
downloadqt-creator-16d5bf0afcee6c080d78219842c88f377c4bc6ce.tar.gz
ClangRefactoring: Move transaction in fetchPrecompiledHeader
Prepare the move of fetchPrecompiledHeader in the lambda to execute it in the thread. Change-Id: I00f906196dabfdb5cd38f4b9752d92678236b849 Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Diffstat (limited to 'src/tools/clangrefactoringbackend')
-rw-r--r--src/tools/clangrefactoringbackend/source/symbolindexer.cpp11
1 files changed, 3 insertions, 8 deletions
diff --git a/src/tools/clangrefactoringbackend/source/symbolindexer.cpp b/src/tools/clangrefactoringbackend/source/symbolindexer.cpp
index 2fa2480a37..cb47b6f5d2 100644
--- a/src/tools/clangrefactoringbackend/source/symbolindexer.cpp
+++ b/src/tools/clangrefactoringbackend/source/symbolindexer.cpp
@@ -90,13 +90,9 @@ void SymbolIndexer::updateProjectParts(ProjectPartContainers &&projectParts)
void SymbolIndexer::updateProjectPart(ProjectPartContainer &&projectPart)
{
- Sqlite::DeferredTransaction transaction{m_transactionInterface};
-
ProjectPartId projectPartId = projectPart.projectPartId;
const FilePath pchPath = m_precompiledHeaderStorage.fetchPrecompiledHeader(projectPartId);
- transaction.commit();
-
using Builder = CommandLineBuilder<ProjectPartContainer, Utils::SmallStringVector>;
Builder commandLineBuilder{
projectPart, projectPart.toolChainArguments, InputFileType::Source, {}, {}, pchPath};
@@ -157,17 +153,16 @@ void SymbolIndexer::updateChangedPath(FilePathId filePathId,
optionalArtefact = m_projectPartsStorage.fetchProjectPartArtefact(filePathId);
if (!optionalArtefact)
return;
+ transaction.commit();
const FilePath pchPath = m_precompiledHeaderStorage.fetchPrecompiledHeader(
optionalArtefact->projectPartId);
- transaction.commit();
-
SourceTimeStamps dependentTimeStamps = m_symbolStorage.fetchIncludedIndexingTimeStamps(filePathId);
const ProjectPartArtefact &artefact = *optionalArtefact;
- CommandLineBuilder<ProjectPartArtefact, Utils::SmallStringVector>
- builder{artefact, artefact.toolChainArguments, InputFileType::Source, {}, {}, pchPath};
+ CommandLineBuilder<ProjectPartArtefact, Utils::SmallStringVector> builder{
+ artefact, artefact.toolChainArguments, InputFileType::Source, {}, {}, pchPath};
auto indexing = [arguments = builder.commandLine, filePathId, this](
SymbolsCollectorInterface &symbolsCollector) {