ProjectDefinition.st
changeset 10188 660aa980d6ae
parent 10187 5bb38e7b8923
child 10198 7577449a7edd
--- a/ProjectDefinition.st	Tue Nov 21 15:07:07 2006 +0100
+++ b/ProjectDefinition.st	Tue Nov 21 18:09:45 2006 +0100
@@ -648,17 +648,32 @@
         s nextPutLine:'        "<className> or (<className> attributes...) in load order"'.
 
         ignoreOldEntries ifFalse:[
-            oldSpec do:[:entry |
+            oldSpec do:[:oldEntry |
+                |newEntry className cls|
+
                 s spaces:8.
-                (entry isArray and:[entry first isString]) ifTrue:[  
-                    (entry collect:[:s | s asSymbol]) storeArrayElementOn:s.
+                (oldEntry isArray and:[oldEntry first isString]) ifTrue:[  
+                    newEntry := oldEntry collect:[:s | s asSymbol].
+                    className := newEntry first.
                 ] ifFalse:[
-                    entry isString ifTrue:[  
-                        entry asSymbol storeArrayElementOn:s.
+                    oldEntry isString ifTrue:[  
+                        newEntry := oldEntry asSymbol.
                     ] ifFalse:[
-                        entry storeArrayElementOn:s.
+                        newEntry := oldEntry.
+                    ].
+                    className := newEntry.
+                ].
+                cls := Smalltalk classNamed:className.
+                (cls notNil and:[cls isLoaded not]) ifTrue:[
+                    newEntry isArray ifTrue:[
+                        (newEntry includes:#autoload) ifFalse:[
+                            newEntry := newEntry copyWith:#autoload.
+                        ].
+                    ] ifFalse:[
+                        newEntry := Array with:newEntry with:#autoload.
                     ].
                 ].
+                newEntry storeArrayElementOn:s.
                 s cr.
             ].
         ].
@@ -716,7 +731,7 @@
 
     "Modified: / 08-08-2006 / 19:24:34 / fm"
     "Created: / 10-10-2006 / 22:00:50 / cg"
-    "Modified: / 11-10-2006 / 14:32:59 / cg"
+    "Modified: / 21-11-2006 / 18:02:04 / cg"
 !
 
 companyName_code
@@ -3598,7 +3613,7 @@
 !ProjectDefinition class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.119 2006-11-21 14:07:07 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.120 2006-11-21 17:09:45 cg Exp $'
 ! !
 
 ProjectDefinition initialize!