On May 10, 2012, at 1:19 AM, Francisco Garau wrote:
It also happened on a 20032 image (see screenshot).
Smalltalk cleanUp didn't solve the issue here.
Please, note the Unnamed Changeset with a Dictionaryâ¦
Tx Franscico Indeed it looks like something weird happened. Stef
- Francisco
On 9 May 2012 20:27, Pavel Krivanek <pavel.krivanek@gmail.com> wrote: On Wed, May 9, 2012 at 3:39 PM, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote:
Now I do not understand why this guy cannot get printed.
I do not see why
ClassDescription>>printOn: aStream aStream nextPutAll: self name
Metaclass>>name "Answer a String that is the name of the receiver, either 'Metaclass' or the name of the receiver's class followed by ' class'."
thisClass == nil ifTrue: [^'a Metaclass'] ifFalse: [^thisClass name , ' class']
self first soleInstance printString -> leads to have emergency debugger.
you do not get emergency! I do not like when we do not get the same bugsâ¦
on some inst vars and expressions I get the emergency evaluator.
self name shows:
a Dictionary(#DependentsFields->a WeakIdentityKeyDictionary(a CategoryWidget->a DependentsArray(a PluggableIconListMorph(217841664)) a ContextVariablesInspector->a DependentsArray(a PluggableListMorph(445382656) a PluggableTextMorph(1046216704)) a ContextVariablesInspector->a DependentsArray(a PluggableListMorph(290193408) ... )
The source of printing problems will be in thisClass.
The next interesting thing is that it has no pointers and it is removed after garbageCollect.
So this is a good news :).
The question is what produced such strange object and how many similar ones we still have in the image. It can have very unwelcome consequences - for example the segmentation faults on Fuel packages exports when executed from command line. But from workspace it behaves differently.
-- Pavel
-- Pavel
Stef
<Screen shot 2012-05-10 at 00.12.55.png>