[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [KDevelop] a920cd7: Just cleanup parent contexts when we are reusing t
From:       Aleix Pol <aleixpol () kde ! org>
Date:       2010-12-27 0:08:26
Message-ID: 20101227000826.ED142A6090 () git ! kde ! org
[Download RAW message or body]

commit a920cd76f58f8daea50e1421b17ee32b69786bbe
branch master
Author: Aleix Pol <aleixpol@kde.org>
Date:   Sun Dec 26 23:17:14 2010 +0100

    Just cleanup parent contexts when we are reusing them.
    Makes first parsing a little faster.

diff --git a/projectmanagers/cmake/parser/cmakeprojectvisitor.cpp \
b/projectmanagers/cmake/parser/cmakeprojectvisitor.cpp index e2f16d1..5d766a0 100644
--- a/projectmanagers/cmake/parser/cmakeprojectvisitor.cpp
+++ b/projectmanagers/cmake/parser/cmakeprojectvisitor.cpp
@@ -683,6 +683,10 @@ KDevelop::ReferencedTopDUContext \
CMakeProjectVisitor::createContext(const KUrl&  \
topctx->deleteChildContextsRecursively();  topctx->deleteUses();
         }
+        
+        foreach(DUContext* importer, topctx->importers())
+            importer->removeImportedParentContext(topctx);
+        topctx->clearImportedParentContexts();
     }
     else
     {
@@ -700,10 +704,6 @@ KDevelop::ReferencedTopDUContext \
                CMakeProjectVisitor::createContext(const KUrl&
     ///      between the topducontext's of independent projects, like for example \
                kdebase and kdevplatform
     ///@todo Solve that by creating unique versions of all used top-context on a \
per-project basis using ParsingEnvironmentFile for disambiguation.  
-    foreach(DUContext* importer, topctx->importers())
-        importer->removeImportedParentContext(topctx);
-    topctx->clearImportedParentContexts();
-    
     topctx->addImportedParentContext(aux);
 
     /// @todo should we check for NULL or assert?


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic