[crash] Squeak crash on MasOS 10.3 (panther)

tblanchard at mac.com tblanchard at mac.com
Sat Nov 1 21:33:12 UTC 2003


FWIW, I'm using Ian's 3.6-g2 VM with the default image it installs  
(3.6g) and if anything, this is more stable since installing Panther.  
Under Jag, Squeak *always* crashed when the display depth was changed  
(which was nearly every time I put my powerbook to sleep to go  
somewhere).  I've been playing with it for the last 30 minutes moving  
it to the background, changing the display depth, putting it to sleep  
and waking it up - and it no longer crashes on demand for me.  I've  
also been playing with expose and that doesn't crash it either (but  
expose is way cool - we ought to implement a similar feature in the  
world morph).

I've got a 1GHz G4 15" PB with 1G of RAM and a cleanly installed  
Panther (archive and install was used).

So there's a data point for you.

-Todd Blanchard

On Oct 31, 2003, at 11:58 PM, John M McIntosh wrote:

> "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