I'm hitting a failure in a BitBlt primitive when using GrafPort (part of Freetype). The stack details are below. It seems to happen after typing a character or two in the code pane of the class browser. Is this a known issue? Is there a simple fix?<div>
<br class="webkit-block-placeholder"></div><div>- Stephen</div><div><br class="webkit-block-placeholder"></div><div><div>12 April 2008 10:15:06 am</div><div><br class="webkit-block-placeholder"></div><div>VM: Mac OS - a SmalltalkImage</div>
<div>Image: Squeak3.9 [latest update: #7067]</div><div><br class="webkit-block-placeholder"></div><div>SecurityManager state:</div><div>Restricted: false</div><div>FileAccess: true</div><div>SocketAccess: true</div><div>Working Dir /Users/stephen/Squeak3.9-final-7067</div>
<div>Trusted Dir /foobar/tooBar/forSqueak/bogus</div><div>Untrusted Dir /Users/stephen/Library/Preferences/Squeak/Internet/My Squeak</div><div><br class="webkit-block-placeholder"></div><div>GrafPort(Object)>>error:</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>Receiver: a GrafPort</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Arguments and temporary variables: </div><div><span class="Apple-tab-span" style="white-space:pre">                </span>aString: <span class="Apple-tab-span" style="white-space:pre">        </span>'Error: a primitive has failed'</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>Receiver's instance variables: </div><div><span class="Apple-tab-span" style="white-space:pre">                </span>destForm: <span class="Apple-tab-span" style="white-space:pre">        </span>DisplayScreen(1680x1050x32)</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>sourceForm: <span class="Apple-tab-span" style="white-space:pre">        </span>Form(11x1x32)</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>halftoneForm: <span class="Apple-tab-span" style="white-space:pre">        </span>nil</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>combinationRule: <span class="Apple-tab-span" style="white-space:pre">        </span>41</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>destX: <span class="Apple-tab-span" style="white-space:pre">        </span>797</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>destY: <span class="Apple-tab-span" style="white-space:pre">        </span>434</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>width: <span class="Apple-tab-span" style="white-space:pre">        </span>11</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>height: <span class="Apple-tab-span" style="white-space:pre">        </span>1</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>sourceX: <span class="Apple-tab-span" style="white-space:pre">        </span>0</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>sourceY: <span class="Apple-tab-span" style="white-space:pre">        </span>0</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>clipX: <span class="Apple-tab-span" style="white-space:pre">        </span>517</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>clipY: <span class="Apple-tab-span" style="white-space:pre">        </span>363</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>clipWidth: <span class="Apple-tab-span" style="white-space:pre">        </span>572</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>clipHeight: <span class="Apple-tab-span" style="white-space:pre">        </span>189</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>colorMap: <span class="Apple-tab-span" style="white-space:pre">        </span>nil</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>alpha: <span class="Apple-tab-span" style="white-space:pre">        </span>nil</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>fillPattern: <span class="Apple-tab-span" style="white-space:pre">        </span>Color black</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>lastFont: <span class="Apple-tab-span" style="white-space:pre">        </span>FreeTypeFont('Verdana' 'Regular' 10)</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>lastFontForegroundColor: <span class="Apple-tab-span" style="white-space:pre">        </span>Color veryDarkGray</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>lastFontBackgroundColor: <span class="Apple-tab-span" style="white-space:pre">        </span>Color transparent</div><div><br class="webkit-block-placeholder"></div>
<div>[] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := thisContext. [errCtx := errCtx sender. [errCtx no...]}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Arguments and temporary variables: </div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>aWorld: <span class="Apple-tab-span" style="white-space:pre">        </span>a PasteUpMorph(1622) [world]</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>err: <span class="Apple-tab-span" style="white-space:pre">        </span>'Error: a primitive has failed'</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>rcvr: <span class="Apple-tab-span" style="white-space:pre">        </span>a GrafPort</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>errCtx: <span class="Apple-tab-span" style="white-space:pre">        </span>TextMorphForShout(TextMorph)>>drawOn:</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>errMorph: <span class="Apple-tab-span" style="white-space:pre">        </span>a TextMorphForShout(192)</div><div><br class="webkit-block-placeholder"></div><div>
BlockContext>>valueWithPossibleArgs:</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Receiver: [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := thisContext. [errCtx := e...etc...</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>Arguments and temporary variables: </div><div><span class="Apple-tab-span" style="white-space:pre">                </span>anArray: <span class="Apple-tab-span" style="white-space:pre">        </span>an Array('Error: a primitive has failed' a GrafPort)</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>Receiver's instance variables: </div><div><span class="Apple-tab-span" style="white-space:pre">                </span>sender: <span class="Apple-tab-span" style="white-space:pre">        </span>BlockContext>>valueWithPossibleArgs:</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>pc: <span class="Apple-tab-span" style="white-space:pre">        </span>121</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>stackp: <span class="Apple-tab-span" style="white-space:pre">        </span>0</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>nargs: <span class="Apple-tab-span" style="white-space:pre">        </span>2</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>startpc: <span class="Apple-tab-span" style="white-space:pre">        </span>74</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>home: <span class="Apple-tab-span" style="white-space:pre">        </span>WorldState>>displayWorldSafely:</div><div><br class="webkit-block-placeholder"></div>
<div>[] in BlockContext>>ifError: {[:ex | errorHandlerBlock valueWithPossibleArgs: {ex description. ex receiver}]}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>Arguments and temporary variables: </div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>errorHandlerBlock: <span class="Apple-tab-span" style="white-space:pre">        </span>[] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx...etc...</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>ex: <span class="Apple-tab-span" style="white-space:pre">        </span>Error: a primitive has failed</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder">
</div><div>--- The full stack ---</div><div>GrafPort(Object)>>error:</div><div>[] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := thisContext. [errCtx := errCtx sender. [errCtx no...]}</div><div>
BlockContext>>valueWithPossibleArgs:</div><div>[] in BlockContext>>ifError: {[:ex | errorHandlerBlock valueWithPossibleArgs: {ex description. ex receiver}]}</div><div> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -</div>
<div>BlockContext>>valueWithPossibleArgs:</div><div>[] in MethodContext(ContextPart)>>handleSignal: {[(self tempAt: 2) valueWithPossibleArgs: {exception}]}</div><div>BlockContext>>ensure:</div><div>MethodContext(ContextPart)>>handleSignal:</div>
<div>Error(Exception)>>signal</div><div>Error(Exception)>>signal:</div><div>GrafPort(Object)>>error:</div><div>GrafPort(Object)>>primitiveFailed</div><div>GrafPort(BitBlt)>>copyBitsColor:alpha:gammaTable:ungammaTable:</div>
<div>FreeTypeFont>>displayLineGlyphOn:from:to:</div><div>FreeTypeFont>>displayUnderlineOn:from:to:</div><div>LogicalFont>>displayUnderlineOn:from:to:</div><div>MultiDisplayScanner>>displayLine:offset:leftInRun:</div>
<div>MultiNewParagraph>>displayOn:using:at:</div><div>FormCanvas>>paragraph:bounds:color:</div><div>TextMorphForShout(TextMorph)>>drawOn:</div><div>FormCanvas(Canvas)>>draw:</div><div>FormCanvas(Canvas)>>drawMorph:</div>
<div>[] in TextMorphForShout(Morph)>>fullDrawOn: {[(aCanvas isVisible: self bounds) ifTrue: [aCanvas drawMorph: self]. self...]}</div><div>FormCanvas>>roundCornersOf:in:during:</div><div>FormCanvas(Canvas)>>roundCornersOf:during:</div>
<div>TextMorphForShout(Morph)>>fullDrawOn:</div><div>FormCanvas(Canvas)>>fullDraw:</div><div>FormCanvas(Canvas)>>fullDrawMorph:</div><div>[] in TransformMorph>>drawSubmorphsOn: {[:m | myCanvas fullDrawMorph: m]}</div>
<div>Array(SequenceableCollection)>>reverseDo:</div><div>[] in TransformMorph>>drawSubmorphsOn: {[:myCanvas | (self angle ~= 0.0 or: [self scale ~= 1.0]) ifTrue: [FreeT...]}</div><div>FormCanvas>>transformBy:clippingTo:during:smoothing:</div>
<div>TransformMorph>>drawSubmorphsOn:</div><div>[] in TransformMorph(Morph)>>fullDrawOn: {[(aCanvas isVisible: self bounds) ifTrue: [aCanvas drawMorph: self]. self...]}</div><div>FormCanvas>>roundCornersOf:in:during:</div>
<div>FormCanvas(Canvas)>>roundCornersOf:during:</div><div>TransformMorph(Morph)>>fullDrawOn:</div><div>FormCanvas(Canvas)>>fullDraw:</div><div>FormCanvas(Canvas)>>fullDrawMorph:</div><div>[] in PluggableShoutMorph(Morph)>>drawSubmorphsOn: {[:m | canvas fullDrawMorph: m]}</div>
<div>Array(SequenceableCollection)>>reverseDo:</div><div>[] in PluggableShoutMorph(Morph)>>drawSubmorphsOn: {[:canvas | submorphs reverseDo: [:m | canvas fullDrawMorph: m]]}</div><div>PluggableShoutMorph(Morph)>>drawSubmorphsOn:</div>
<div>...etc...</div><div><br class="webkit-block-placeholder"></div></div>