aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/clangcodemodel/clangmodelmanagersupport.cpp5
-rw-r--r--src/plugins/clangcodemodel/test/clangdtests.cpp10
2 files changed, 7 insertions, 8 deletions
diff --git a/src/plugins/clangcodemodel/clangmodelmanagersupport.cpp b/src/plugins/clangcodemodel/clangmodelmanagersupport.cpp
index a25ceef0ff5..9d0cd2c0241 100644
--- a/src/plugins/clangcodemodel/clangmodelmanagersupport.cpp
+++ b/src/plugins/clangcodemodel/clangmodelmanagersupport.cpp
@@ -683,6 +683,11 @@ void ClangModelManagerSupport::watchForExternalChanges()
if (!LanguageClientManager::hasClients<ClangdClient>())
return;
for (const FilePath &file : files) {
+ if (TextEditor::TextDocument::textDocumentForFilePath(file)) {
+ // if we have a document for that file we should receive the content
+ // change via the document signals
+ continue;
+ }
const ProjectFile::Kind kind = ProjectFile::classify(file.toString());
if (!ProjectFile::isSource(kind) && !ProjectFile::isHeader(kind))
continue;
diff --git a/src/plugins/clangcodemodel/test/clangdtests.cpp b/src/plugins/clangcodemodel/test/clangdtests.cpp
index bfc6d1d4f8d..984aac6e779 100644
--- a/src/plugins/clangcodemodel/test/clangdtests.cpp
+++ b/src/plugins/clangcodemodel/test/clangdtests.cpp
@@ -2052,21 +2052,15 @@ void ClangdTestExternalChanges::test()
QVERIFY(curDoc->marks().isEmpty());
// Now trigger an external change in an open, but not currently visible file and
- // verify that we get a new client and diagnostics in the current editor.
+ // verify that we get diagnostics in the current editor.
TextDocument * const docToChange = document("mainwindow.cpp");
docToChange->setSilentReload();
QFile otherSource(filePath("mainwindow.cpp").toString());
QVERIFY(otherSource.open(QIODevice::WriteOnly));
otherSource.write("blubb");
otherSource.close();
- QVERIFY(waitForSignalOrTimeout(LanguageClientManager::instance(),
- &LanguageClientManager::clientAdded, timeOutInMs()));
- ClangdClient * const newClient = ClangModelManagerSupport::clientForProject(project());
- QVERIFY(newClient);
- QVERIFY(newClient != oldClient);
- newClient->enableTesting();
if (curDoc->marks().isEmpty())
- QVERIFY(waitForSignalOrTimeout(newClient, &ClangdClient::textMarkCreated, timeOutInMs()));
+ QVERIFY(waitForSignalOrTimeout(client(), &ClangdClient::textMarkCreated, timeOutInMs()));
}
ClangdTestIndirectChanges::ClangdTestIndirectChanges()