D18567: Make testActiveDocumentsGetBestPriority() clean up after itself

Thomas Schöps noreply at phabricator.kde.org
Sat Apr 6 13:16:32 BST 2019


thomassc added a comment.


  Thanks for the update. Seems good to me.
  
  Yes, I think this should fix the original issue, since it manages to close the documents that the test leaves open without crashing, and when adding the new tests from the other patch that first caused the issue, I don't see any problems anymore.
  
  I tried to also address Milian's other comment, but seemingly couldn't update the patch here anymore (or didn't find how to). So this would be the diff with use of the `auto`:
  
    diff --git a/kdevplatform/tests/testfile.cpp b/kdevplatform/tests/testfile.cpp
    index aab8906f3a..29f4e572d7 100644
    --- a/kdevplatform/tests/testfile.cpp
    +++ b/kdevplatform/tests/testfile.cpp
    @@ -30,6 +30,7 @@
     #include <language/duchain/duchain.h>
     #include <language/backgroundparser/backgroundparser.h>
     #include <interfaces/icore.h>
    +#include <interfaces/idocumentcontroller.h>
     #include <interfaces/ilanguagecontroller.h>
     #include <project/projectmodel.h>
     
    @@ -123,6 +124,14 @@ TestFile::TestFile(const QString& contents, const QString& fileExtension, const
     
     TestFile::~TestFile()
     {
    +    if (auto* document = ICore::self()->documentController()->documentForUrl(d->url.toUrl())) {
    +        document->close(KDevelop::IDocument::Discard);
    +    }
    +
    +    auto backgroundParser = ICore::self()->languageController()->backgroundParser();
    +    backgroundParser->removeDocument(d->url, this);
    +    QTRY_VERIFY(!backgroundParser->parseJobForDocument(d->url));
    +
         if (d->topContext && !d->keepDUChainData) {
             DUChainWriteLocker lock;
             DUChain::self()->removeDocumentChain(d->topContext.data());

REPOSITORY
  R32 KDevelop

REVISION DETAIL
  https://phabricator.kde.org/D18567

To: arrowd, #kdevelop, mwolff, thomassc
Cc: mwolff, kdevelop-devel, gennad, glebaccon, domson, antismap, iodelay, alexeymin, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20190406/4c39524c/attachment.html>


More information about the KDevelop-devel mailing list