Andreas Raab uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-ar.304.mcz==================== Summary ====================
Name: System-ar.304
Author: ar
Time: 29 March 2010, 9:05:24.951 pm
UUID: 41a92fdc-bd06-8942-9728-b2af9b5fe37d
Ancestors: System-tfel.303
Fixes
http://bugs.squeak.org/view.php?id=6478=============== Diff against System-tfel.303 ===============
Item was changed:
----- Method: SystemDictionary>>classNames (in category 'classes and traits') -----
classNames
"Answer a SortedCollection of all class names."
| names |
cachedClassNames == nil ifTrue:
[names := OrderedCollection new: self size.
+ self keysAndValuesDo:[:key :value|
+ "The key == value name test below addresses two separate issues:
+ 1) Obsolete classes, where key = #Foo and value name = 'AnObsoleteFoo'
+ 2) Aliases, i.e., Smalltalk at: #OtherName put: aClass
+ "
+ (value isInMemory and: [(value isKindOf: Class) and: [key == value name]])
+ ifTrue: [names add: key]].
- self do:
- [:cl | (cl isInMemory
- and: [(cl isKindOf: Class)
- and: [(cl name beginsWith: 'AnObsolete') not]])
- ifTrue: [names add: cl name]].
cachedClassNames := names asSortedCollection].
^ cachedClassNames!