I just had a very strange experience with Smallwiki. I
installed it on
my home machine and ran it since I wanted to play around a bit with a
wiki that I could easily trash. I set up the menu component just like
it had been described when suddenly Smallwiki locked up when trying to
save to top-level page. *Just* the top-level page I should add.
Since I had the image still open I got over there and some
investigation showed that the problem was caused by an endless
recursion caused from using #deepCopy to copy an object with "up"
pointers (SWFolder) which was initiated by the following sequence:
[...]
Dictionary(Object)>>deepCopy
Array(Object)>>deepCopy
Association(Object)>>deepCopy
OrderedCollection(Object)>>deepCopy
Array(Object)>>deepCopy
[...]
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?
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.
Lukas
--
Lukas Renggli
http://www.lukas-renggli.ch