ignore aliases in #allClasses.
authorClaus Gittinger <cg@exept.de>
Wed, 18 Aug 1999 17:55:14 +0200
changeset 4607 d03eb0e36910
parent 4606 21bf9124f4ac
child 4608 e09b7c235a02
ignore aliases in #allClasses.
Smalltalk.st
--- a/Smalltalk.st	Wed Aug 18 17:17:36 1999 +0200
+++ b/Smalltalk.st	Wed Aug 18 17:55:14 1999 +0200
@@ -1414,14 +1414,16 @@
     "/ If that happens, we restart the set-building here
     "/
     [(classes := CachedClasses) isNil] whileTrue:[
-	CachedClasses := classes := IdentitySet new:800. 
-	self do:[:anObject |
-	    anObject notNil ifTrue:[
-		anObject isBehavior ifTrue:[
-		    classes add:anObject
-		]
-	    ]
-	]
+        CachedClasses := classes := IdentitySet new:800. 
+        self keysAndValuesDo:[:sym :anObject |
+            anObject notNil ifTrue:[
+                anObject isBehavior ifTrue:[
+                    anObject name == sym ifTrue:[
+                        classes add:anObject
+                    ]
+                ]
+            ]
+        ]
     ].
     ^ classes
 
@@ -4474,5 +4476,5 @@
 !Smalltalk class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Smalltalk.st,v 1.335 1999-08-17 13:50:08 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Smalltalk.st,v 1.336 1999-08-18 15:55:14 cg Exp $'
 ! !