[crash] Squeak crash on MasOS 10.3 (panther)
John M McIntosh
johnmci at smalltalkconsulting.com
Sat Nov 1 06:58:26 UTC 2003
"HAYASHI, Tetsuya" <tetha at st.rim.or.jp> was kind enough to forward an
interesting crash dump and a solution which ties
to
http://developer.apple.com/documentation/Performance/Conceptual/
Drawing/Tasks/QuickDrawPerformance.html#//apple_ref/doc/uid/20001878/
CJBJFIDD
If someone has 10.3 handy and is building VM's then I would suggest
they alter some lines in
sqMacWindow.c routine ioShowDisplay() to read
/* create a mask region so that only the affected rectangle is copied
*/
SetRectRgn(maskRect, affectedL, affectedT, affectedR, affectedB);
windowPort = GetWindowPort(stWindow);
LockPortBits(windowPort);
SetPort((GrafPtr) windowPort);
CopyBits((BitMap *) *stPixMap, GetPortBitMapForCopyBits(windowPort),
&srcRect, &dstRect, srcCopy, maskRect);
#if TARGET_API_MAC_CARBON
/* Note I did attempt to use the logic of getting the port's update
region
then adding in the mask region, then setting the port region, versus
this flush
that shaves say 2 seconds off the FreeCell game 1 benchmark. However
the video
updating becomes jerky versus smooth, so the trade off isn't good. */
QDFlushPortBuffer (windowPort, maskRect);
#endif
UnlockPortBits();
and let us know if this fixes things. Tetsuya also had a LockPixels()
call but I am not sure if this is required. Also his unlockPortBits()
was
before the QDFlushPortBuffer() but based on some other dumps I have
received I suspect the flush needs to be locked too.
On Friday, October 31, 2003, at 10:16 PM, John M McIntosh wrote:
>
> On Friday, October 31, 2003, at 12:08 PM, Raymond wrote:
>
>> John wrote :
>>> AAAAAAAHHH
>>
>> Hi John...you seem ''agréablement surpris' or may be I interpret too
>> much your
>> AAAAAAAHH....
>
>> Well, I need time again before conclusion, but :) may be it was a
>> rights access problem....
>>
>> not sure yet.
>
> I've collected a few more independently submitted reports, and Ian and
> I setup a fresh 10.3 machine today at viewpoints and watched it crash,
> so I know it's broken.
>
> *All* Squeak Mac users should use the submit a bug report button to
> apple if they converted to 10.3 *hint* *hint*. So we can generate some
> interest from Apple support staff. I'm assuming since there has been
> no code changes in this Squeak VM routine since os-x 10.0.0 beta then
> it's likely not my bug.
>
> What we do know know is the unix VM seems to work. So for folks that
> have converted and don't want to convert back I'll suggest hunting up
> the latest Unix mac-quartz VM and use that until either Apple does a
> patch, or I find a work-around.
--
========================================================================
===
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com
========================================================================
===
More information about the Squeak-dev
mailing list
|