class: ProjectDefinition
authorClaus Gittinger <cg@exept.de>
Wed, 21 Nov 2012 17:57:05 +0100
changeset 14521 bfca62eee2ea
parent 14520 cc5f9141dded
child 14522 ae3c24478338
class: ProjectDefinition changed: #loadPackages:asAutoloaded: loading a package may (as a side effect) load other packages which I wanted to load initially. Speed up by checking.
ProjectDefinition.st
--- a/ProjectDefinition.st	Wed Nov 21 17:34:54 2012 +0100
+++ b/ProjectDefinition.st	Wed Nov 21 17:57:05 2012 +0100
@@ -5731,10 +5731,15 @@
     ].
     [
         Class withoutUpdatingChangesDo:[
-            packagesToLoad do:[:aPackage |
-                (PackagesBeingLoaded includes:aPackage) ifFalse:[
-                    PackagesBeingLoaded add:aPackage.
-                    Smalltalk loadPackage:aPackage asAutoloaded:asAutoloaded.
+            packagesToLoad do:[:eachPackageID |
+                |cls|
+
+                cls := ProjectDefinition definitionClassForPackage:eachPackageID.
+                (cls isNil or:[cls projectIsLoaded not]) ifTrue:[                        
+                    (PackagesBeingLoaded includes:eachPackageID) ifFalse:[
+                        PackagesBeingLoaded add:eachPackageID.
+                        Smalltalk loadPackage:eachPackageID asAutoloaded:asAutoloaded.
+                    ]
                 ]
             ].
         ].
@@ -6714,11 +6719,11 @@
 !ProjectDefinition class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.396 2012-11-07 16:47:54 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.397 2012-11-21 16:57:05 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.396 2012-11-07 16:47:54 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.397 2012-11-21 16:57:05 cg Exp $'
 !
 
 version_SVN