diff options
author | David Schulz <david.schulz@qt.io> | 2019-05-13 13:41:12 +0200 |
---|---|---|
committer | David Schulz <david.schulz@qt.io> | 2019-05-13 13:09:09 +0000 |
commit | b6ea02d82989c7c2a29639fa416e556c7c489027 (patch) | |
tree | d3e639d57d3c7fd99ddf1f5cdb1ebbc459526cb5 /src/plugins/languageclient | |
parent | f341dd0b8e21fecfd5d6c1e38c092fbecf073658 (diff) | |
download | qt-creator-b6ea02d82989c7c2a29639fa416e556c7c489027.tar.gz |
LanguageClient: Fix deadlock in locatorfilter
Change-Id: I4804ec28f74fdf3c7cf20798a94b6edf04f00439
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/languageclient')
-rw-r--r-- | src/plugins/languageclient/locatorfilter.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/plugins/languageclient/locatorfilter.cpp b/src/plugins/languageclient/locatorfilter.cpp index 8576f5658d..e3f34eba5e 100644 --- a/src/plugins/languageclient/locatorfilter.cpp +++ b/src/plugins/languageclient/locatorfilter.cpp @@ -146,8 +146,10 @@ Core::LocatorFilterEntry DocumentLocatorFilter::generateLocatorEntry(const Docum void DocumentLocatorFilter::prepareSearch(const QString &/*entry*/) { QMutexLocker locker(&m_mutex); - if (m_symbolCache && !m_currentSymbols.has_value()) + if (m_symbolCache && !m_currentSymbols.has_value()) { + locker.unlock(); m_symbolCache->requestSymbols(m_currentUri); + } } QList<Core::LocatorFilterEntry> DocumentLocatorFilter::matchesFor( |