aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Schulz <david.schulz@qt.io>2021-12-08 14:46:01 +0100
committerDavid Schulz <david.schulz@qt.io>2021-12-08 13:54:15 +0000
commit5d75f1900b9e1da685cd45ca4cc597994e8f3f8c (patch)
tree813593609ca1de8e503a77e038ce220f6fa8b244
parent74295626cb37848101222e637a59c6e4d4986c79 (diff)
LanguageClient: fix crash on completion assist cancel
The Client might be already deleted when the text editor codeassist calls cancel on the processor. Change-Id: I6b0b484a086456ed9d0543f530aea0fae32c523a Reviewed-by: Christian Stenger <christian.stenger@qt.io>
-rw-r--r--src/plugins/languageclient/languageclientcompletionassist.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/plugins/languageclient/languageclientcompletionassist.cpp b/src/plugins/languageclient/languageclientcompletionassist.cpp
index 3eec6cbbd9..bce818f96a 100644
--- a/src/plugins/languageclient/languageclientcompletionassist.cpp
+++ b/src/plugins/languageclient/languageclientcompletionassist.cpp
@@ -392,8 +392,10 @@ bool LanguageClientCompletionAssistProcessor::running()
void LanguageClientCompletionAssistProcessor::cancel()
{
if (m_currentRequest.has_value()) {
- m_client->cancelRequest(m_currentRequest.value());
- m_client->removeAssistProcessor(this);
+ if (m_client) {
+ m_client->cancelRequest(m_currentRequest.value());
+ m_client->removeAssistProcessor(this);
+ }
m_currentRequest.reset();
} else if (m_postponedUpdateConnection) {
QObject::disconnect(m_postponedUpdateConnection);