[Vm-dev] vm crash from BalloonEngine (maybe B2DPlugin or
BitBltPlugin)
David T. Lewis
lewis at mail.msen.com
Thu Apr 16 03:05:21 UTC 2015
On Wed, Apr 08, 2015 at 05:33:20PM +0200, Nicolai Hess wrote:
>
> In order to reproduce it, draw a rectangle with radial gradient fill, with
> direction
> and normal, both of length 1.
>
> This one works (no vm crash):
> |form canvas fill direction normal|
> direction := 1 at 0.
> normal := 0 at 0.
> form := Form extent:300 at 300 depth:32.
> canvas := form getCanvas.
> fill := GradientFillStyle new colorRamp:{0 -> Color white . 0.5 -> Color
> green . 1 -> Color blue};origin:150 at 150
> ;direction:direction;normal:normal;radial:true;yourself.
> canvas fillRectangle: (50 at 50 extent:200 at 200) fillStyle: fill.
> Display getCanvas drawImage: form at: 300 at 300.
>
>
> direction := 1 at 0.
> normal := 0 at 0.
> -> OK
>
> direction := 0 at 0.
> normal := 0 at 1.
> -> OK
>
> direction := 1 at 0.
> normal := 0 at 1.
> -> VM-Crash (Pharo and Squeak)
The VM crash is happening in primitiveRenderScanline in B2DPlugin, called
from BalloonEngine>>primRenderScanline:with:
This probably indicates that a bounds check needs to be added to the
primitive, although I expect that there also is something in the image
that is allowing the primitive to be called with unreasonable parameters.
Dave
More information about the Vm-dev
mailing list