|
I finally got around to testing the Cog VM with my application and quickly found a bug. Transparent PolygonMorphs will eventually cause a primitive failure in the Balloon Engine. Stack printout is below. I've verified this with both Macintosh and Windows Cog VMs on both Squeak and Pharo images. It occurs with the original Macintosh Cog (Squeak 5.8b3) and the latest.
So far, I've been unable to produce the bug on demand. Sometimes it occurs as soon as the morph is opened, sometimes I have to mess with it for a while. Just produce a few transparent polygons and play with them.
PolygonMorph new; color: Color transparent; openInHand.
Error: primAddPolygon:segments:fill:lineWidth:lineFill: failed
BalloonEngine(Object)>>error:
[] in WorldState>>displayWorldSafely:
BlockClosure>>cull:cull:
[] in BlockClosure>>ifError:
BlockClosure>>cull:
[] in MethodContext(ContextPart)>>handleSignal:
BlockClosure>>ensure:
MethodContext(ContextPart)>>handleSignal:
Error(Exception)>>signal
Error(Exception)>>signal:
BalloonEngine(Object)>>error:
BalloonEngine(Object)>>primitiveFailed:
BalloonEngine(Object)>>primitiveFailed
BalloonEngine>>primAddPolygon:segments:fill:lineWidth:lineFill:
BalloonEngine>>drawPolygon:fill:borderWidth:borderColor:transform:
BalloonCanvas>>drawPolygon:fillStyle:borderWidth:borderColor:
FormCanvas>>drawPolygon:fillStyle:borderWidth:borderColor:
FormCanvas(Canvas)>>drawPolygon:fillStyle:
PolygonMorph>>drawOn:
FormCanvas(Canvas)>>draw:
|