sourceHandle := interpreterProxy fetchInteger: FormBitsIndex ofObject: sourceForm.
The above returns 0
just before the crash; the surface was NOT GCed however.
sourceForm
was retrieved from here loadBitBltFrom.warping..st
sourceForm := interpreterProxy fetchPointer: BBSourceFormIndex ofObject: bitBltOop.
Where bitBltOop
is from primitiveCopyBits
(rcvr
is bitBltOop
):
rcvr := interpreterProxy stackValue: interpreterProxy methodArgumentCount.
(self loadBitBltFrom: rcvr) ifFalse:[^interpreterProxy primitiveFail].
lockSurfaces()
was called from copyBits.st
and copyBits()
from primitiveCopyBits.st
primitiveCopyBits()
is called from image-side (BitBlt>>copyBits
)