Morph Must Die!!! (a bug report)
cgreuter at calum.csclub.uwaterloo.ca
Fri Jun 12 15:21:37 UTC 1998
I seem to have discovered a bug in Morphic. It seems that deleted
Morphs continue to hang around and bloat the image. I was able to
reproduce it in the following manner:
1) Create a Morphic world.
2) Eval "FlasherMorph allInstances size". The number should
be 0 (unless you've created one already--I hadn't and I'm
assuming that you're using a vanilla image).
3) Open a new Morphic world. In the world, create a new
FlasherMorph. Eval'ing (2) should return 1.
4) Delete the Flasher from the World. Eval (2) again. It
should return 1 now, rather than 0.
5) Try closing the World and doing (2) again. This
sometimes makes the instance go away. Also, sometimes
the WorldMorph doesn't go away either.
I did some investigation via a script that would search all instance
variables of all objects for references to a particular object (very
slow) and the only suspicious (to my inexpert eye) reference was from
a number of MethodContexts.
BTW, I'm running Squeak 2.0 (with a VM I built from source, IIRC)
under Linux. The problem persisted after running the auto-update
(which is way cool, BTW).
More information about the Squeak-dev