diff options
author | David Schulz <david.schulz@qt.io> | 2021-12-08 14:46:01 +0100 |
---|---|---|
committer | David Schulz <david.schulz@qt.io> | 2021-12-08 13:54:15 +0000 |
commit | 5d75f1900b9e1da685cd45ca4cc597994e8f3f8c (patch) | |
tree | 813593609ca1de8e503a77e038ce220f6fa8b244 | |
parent | 74295626cb37848101222e637a59c6e4d4986c79 (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.cpp | 6 |
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); |