I suspect this is a problem of the Squeak code, I am
not using #deepCopy
anywhere in the original implementation. As far as I know, at the time
of the first port there was no #postCopy in Squeak and therefor copying
had to be done differently. Now there is a #postCopy, so I don't
understand why it doesn't work. Chris any thoughts/fixes?
If you look at the stack you see this is caused by SWPropertyManager
which indeed uses deepCopy:
SWPropertyManager(Object)>>copy
SWPropertyManager>>postCopy
Dictionary(Object)>>deepCopy
The last time I had a look at the Squeak port of
SmallWiki the same
problem hold for #initialize, since in VisualWorks I have to do it
manually in Squeak objects are initialized twice.
Trivial to fix - just make sure you implement:
new
^self basicNew initialize
instead of "super new" (which really is NOT the right thing to use anyway).
Cheers,
- Andreas