diff options
author | David Schulz <david.schulz@qt.io> | 2022-12-06 09:47:18 +0100 |
---|---|---|
committer | David Schulz <david.schulz@qt.io> | 2022-12-07 10:58:31 +0000 |
commit | 8c8f3e30b56175967c5fb91b0cde89c7f66dc75c (patch) | |
tree | a4e126a3cdac7284b24a2095213df6af004e9d24 /src/plugins/languageclient/languageclientmanager.cpp | |
parent | b7e70592d6e0c8e4c97278209c6f47cec4f1c67c (diff) | |
download | qt-creator-8c8f3e30b56175967c5fb91b0cde89c7f66dc75c.tar.gz |
LanguageClient: Fix handling of defective language server
If the language server cannot be started, the client might be already in
an error state before the language server gets initialized.
Change-Id: Ib6c9df13b381e7854806714c07f4830796bb2cd3
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/languageclient/languageclientmanager.cpp')
-rw-r--r-- | src/plugins/languageclient/languageclientmanager.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/plugins/languageclient/languageclientmanager.cpp b/src/plugins/languageclient/languageclientmanager.cpp index 60468ff12d..7f50391ea1 100644 --- a/src/plugins/languageclient/languageclientmanager.cpp +++ b/src/plugins/languageclient/languageclientmanager.cpp @@ -113,6 +113,8 @@ void LanguageClientManager::clientStarted(Client *client) qCDebug(Log) << "client started: " << client->name() << client; QTC_ASSERT(managerInstance, return); QTC_ASSERT(client, return); + if (client->state() != Client::Uninitialized) // do not proceed if we already received an error + return; if (g_shuttingDown) { clientFinished(client); return; |