From b6ea02d82989c7c2a29639fa416e556c7c489027 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Mon, 13 May 2019 13:41:12 +0200 Subject: LanguageClient: Fix deadlock in locatorfilter Change-Id: I4804ec28f74fdf3c7cf20798a94b6edf04f00439 Reviewed-by: Christian Stenger --- src/plugins/languageclient/locatorfilter.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/plugins/languageclient') 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 DocumentLocatorFilter::matchesFor( -- cgit v1.2.1