I am using Squeak on a Vista PC. When I have Squeak open and
switch to another window, after about 2 minutes, Squeak crashes and brings up
the Emergency Evaluator. The information in the evaluator dump doesn’t
reference any of my code but I realize it still could have been something I was
running that triggered it. This happens when I have my System browser open and
it doesn’t matter whether or not I have any morphs displayed in world. I
haven’t tried switching with the System browser closed. Has anyone else
had this trouble? The error message at the top of the Emergency Evaluator
stack is: “Error: a primitive has failed.” CSW _______________________________________________ Beginners mailing list [hidden email] http://lists.squeakfoundation.org/mailman/listinfo/beginners |
Christine Wolfe wrote:
> I am using Squeak on a Vista PC. When I have Squeak open and switch to > another window, after about 2 minutes, Squeak crashes and brings up the > Emergency Evaluator. The information in the evaluator dump doesn’t > reference any of my code but I realize it still could have been > something I was running that triggered it. This happens when I have my > System browser open and it doesn’t matter whether or not I have any > morphs displayed in world. I haven’t tried switching with the System > browser closed. Has anyone else had this trouble? The error message at > the top of the Emergency Evaluator stack is: “Error: a primitive has > failed.” Interesting. Do you get a SqueakDebug.log when this happens? Usually, the emergency evaluator pops up when there is an error inside the error handling but there is a chance that the SqueakDebug.log has already been written at this point. If you can find it, please send it. Cheers, - Adnreas _______________________________________________ Beginners mailing list [hidden email] http://lists.squeakfoundation.org/mailman/listinfo/beginners |
Hi Andreas,
Thank you for responding. Here's what I just did to try to figure it out: I deleted my old log. I restarted my computer. I opened my image at 4:14 I opened the browser At 4:16 I got the emergency evaluator. Here is the new dump: Error: Error: a primitive has failed 31 October 2009 4:16:10 pm VM: Win32 - a SmalltalkImage Image: Squeak3.10.2 [latest update: #7179] SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir C:\Users\Christine\Documents\01OhioU\01EDCT\EDCT 793C Fall 09\Squeak\Squeak3.10.2-7179 Trusted Dir C:\Users\Christine\Documents\01OhioU\01EDCT\EDCT 793C Fall 09\Squeak\Squeak3.10.2-7179\Christine Untrusted Dir C:\My Squeak\Christine BalloonEngine(Object)>>error: Receiver: a BalloonEngine Arguments and temporary variables: aString: 'Error: a primitive has failed' Receiver's instance variables: workBuffer: a BalloonBuffer span: a Bitmap of length 2048 bitBlt: a GrafPort forms: #() clipRect: 0@1073772165 corner: 30@1010 destOffset: 0@0 externals: an OrderedCollection() aaLevel: 1 edgeTransform: nil colorTransform: nil deferred: false postFlushNeeded: nil [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := thisContext. [errCtx := errCtx sender. [errCtx no...]} Arguments and temporary variables: aWorld: a PasteUpMorph(1622) [world] err: 'Error: a primitive has failed' rcvr: a BalloonEngine errCtx: PasteUpMorph(Morph)>>drawOn: errMorph: a PasteUpMorph(1622) [world] BlockContext>>valueWithPossibleArgs: Receiver: [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := thisContext. [errCtx := e...etc... Arguments and temporary variables: anArray: an Array('Error: a primitive has failed' a BalloonEngine) Receiver's instance variables: sender: BlockContext>>valueWithPossibleArgs: pc: 121 stackp: 0 nargs: 2 startpc: 74 home: WorldState>>displayWorldSafely: [] in BlockContext>>ifError: {[:ex | errorHandlerBlock valueWithPossibleArgs: {ex description. ex receiver}]} Arguments and temporary variables: errorHandlerBlock: [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx...etc... ex: Error: a primitive has failed --- The full stack --- BalloonEngine(Object)>>error: [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := thisContext. [errCtx := errCtx sender. [errCtx no...]} BlockContext>>valueWithPossibleArgs: [] in BlockContext>>ifError: {[:ex | errorHandlerBlock valueWithPossibleArgs: {ex description. ex receiver}]} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - BlockContext>>valueWithPossibleArgs: [] in MethodContext(ContextPart)>>handleSignal: {[(self tempAt: 2) valueWithPossibleArgs: {exception}]} BlockContext>>ensure: MethodContext(ContextPart)>>handleSignal: Error(Exception)>>signal Error(Exception)>>signal: BalloonEngine(Object)>>error: BalloonEngine(Object)>>primitiveFailed BalloonEngine>>primSetClipRect: BalloonEngine>>reset BalloonEngine>>resetIfNeeded BalloonEngine>>drawRectangle:fill:borderWidth:borderColor:transform: BalloonCanvas>>drawRectangle:color:borderWidth:borderColor: BalloonCanvas>>fillRectangle:fillStyle: FormCanvas>>balloonFillRectangle:fillStyle: FormCanvas>>fillRectangle:fillStyle: FormCanvas(Canvas)>>fillRectangle:fillStyle:borderStyle: PasteUpMorph(Morph)>>drawOn: PasteUpMorph>>drawOn: [] in WorldState>>drawWorld:submorphs:invalidAreasOn: {[:r | rectToFill := r. i := 1. [rectToFill isNil or: [i > n]] whileFa...]} Rectangle>>allAreasOutsideList:startingAt:do: Rectangle>>allAreasOutsideList:do: [] in WorldState>>drawWorld:submorphs:invalidAreasOn: {[:dirtyRect | dirtyRect allAreasOutsideList: validList do: [:r | rec...]} Array(SequenceableCollection)>>do: WorldState>>drawWorld:submorphs:invalidAreasOn: [] in WorldState>>displayWorld:submorphs: {[worldDamageRects := self drawWorld: aWorld submorphs: submorphs ...]} FormCanvas>>roundCornersOf:in:during: FormCanvas(Canvas)>>roundCornersOf:during: WorldState>>displayWorld:submorphs: PasteUpMorph>>privateOuterDisplayWorld PasteUpMorph>>displayWorld [] in WorldState>>displayWorldSafely: {[aWorld displayWorld]} BlockContext>>on:do: BlockContext>>ifError: WorldState>>displayWorldSafely: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor yield. false] whileFalse. nil]} [] in BlockContext>>newProcess {[self value. Processor terminateActive]} -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Andreas Raab Sent: Saturday, October 31, 2009 4:13 PM To: A friendly place to get answers to even the most basic questions about Squeak. Subject: [Newbies] Re: Vista compatibility Christine Wolfe wrote: > I am using Squeak on a Vista PC. When I have Squeak open and switch to > another window, after about 2 minutes, Squeak crashes and brings up the > Emergency Evaluator. The information in the evaluator dump doesn't > reference any of my code but I realize it still could have been > something I was running that triggered it. This happens when I have my > System browser open and it doesn't matter whether or not I have any > morphs displayed in world. I haven't tried switching with the System > browser closed. Has anyone else had this trouble? The error message at > the top of the Emergency Evaluator stack is: "Error: a primitive has > failed." Interesting. Do you get a SqueakDebug.log when this happens? Usually, the emergency evaluator pops up when there is an error inside the error handling but there is a chance that the SqueakDebug.log has already been written at this point. If you can find it, please send it. Cheers, - Adnreas _______________________________________________ Beginners mailing list [hidden email] http://lists.squeakfoundation.org/mailman/listinfo/beginners _______________________________________________ Beginners mailing list [hidden email] http://lists.squeakfoundation.org/mailman/listinfo/beginners |
Christine Wolfe wrote:
> Hi Andreas, > > Thank you for responding. Thanks for providing the info ;-) > Here's what I just did to try to figure it out: > > I deleted my old log. > I restarted my computer. > I opened my image at 4:14 > I opened the browser > At 4:16 I got the emergency evaluator. > > Here is the new dump: It looks like the problem is caused by the invalid clipping rectangle here: > clipRect: 0@1073772165 corner: 30@1010 but it's completely unclear to me how we'd end up with a clipping rectangle like this. Are you perhaps using a multi-monitor setup or some sort of virtual desktop software? If so, can you try to see if the same thing happens when you run Squeak on the primary display? Or is Squeak minimized when the problem occurs? Also, when the error happens, can you go back into the emergency evaluator, and print out the result of the following expressions: World bounds. Display extent. DisplayScreen actualScreenSize. This should tell us a little more about the issue. Cheers, - Andreas > > Error: Error: a primitive has failed > 31 October 2009 4:16:10 pm > > VM: Win32 - a SmalltalkImage > Image: Squeak3.10.2 [latest update: #7179] > > SecurityManager state: > Restricted: false > FileAccess: true > SocketAccess: true > Working Dir C:\Users\Christine\Documents\01OhioU\01EDCT\EDCT 793C Fall > 09\Squeak\Squeak3.10.2-7179 > Trusted Dir C:\Users\Christine\Documents\01OhioU\01EDCT\EDCT 793C Fall > 09\Squeak\Squeak3.10.2-7179\Christine > Untrusted Dir C:\My Squeak\Christine > > BalloonEngine(Object)>>error: > Receiver: a BalloonEngine > Arguments and temporary variables: > aString: 'Error: a primitive has failed' > Receiver's instance variables: > workBuffer: a BalloonBuffer > span: a Bitmap of length 2048 > bitBlt: a GrafPort > forms: #() > clipRect: 0@1073772165 corner: 30@1010 > destOffset: 0@0 > externals: an OrderedCollection() > aaLevel: 1 > edgeTransform: nil > colorTransform: nil > deferred: false > postFlushNeeded: nil > > [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := thisContext. > [errCtx := errCtx sender. [errCtx no...]} > Arguments and temporary variables: > aWorld: a PasteUpMorph(1622) [world] > err: 'Error: a primitive has failed' > rcvr: a BalloonEngine > errCtx: PasteUpMorph(Morph)>>drawOn: > errMorph: a PasteUpMorph(1622) [world] > > BlockContext>>valueWithPossibleArgs: > Receiver: [] in WorldState>>displayWorldSafely: {[:err :rcvr | > errCtx := thisContext. [errCtx := e...etc... > Arguments and temporary variables: > anArray: an Array('Error: a primitive has failed' a > BalloonEngine) > Receiver's instance variables: > sender: BlockContext>>valueWithPossibleArgs: > pc: 121 > stackp: 0 > nargs: 2 > startpc: 74 > home: WorldState>>displayWorldSafely: > > [] in BlockContext>>ifError: {[:ex | errorHandlerBlock > valueWithPossibleArgs: {ex description. ex receiver}]} > Arguments and temporary variables: > errorHandlerBlock: [] in > WorldState>>displayWorldSafely: {[:err :rcvr | errCtx...etc... > ex: Error: a primitive has failed > > > --- The full stack --- > BalloonEngine(Object)>>error: > [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := thisContext. > [errCtx := errCtx sender. [errCtx no...]} > BlockContext>>valueWithPossibleArgs: > [] in BlockContext>>ifError: {[:ex | errorHandlerBlock > valueWithPossibleArgs: {ex description. ex receiver}]} > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - > BlockContext>>valueWithPossibleArgs: > [] in MethodContext(ContextPart)>>handleSignal: {[(self tempAt: 2) > valueWithPossibleArgs: {exception}]} > BlockContext>>ensure: > MethodContext(ContextPart)>>handleSignal: > Error(Exception)>>signal > Error(Exception)>>signal: > BalloonEngine(Object)>>error: > BalloonEngine(Object)>>primitiveFailed > BalloonEngine>>primSetClipRect: > BalloonEngine>>reset > BalloonEngine>>resetIfNeeded > BalloonEngine>>drawRectangle:fill:borderWidth:borderColor:transform: > BalloonCanvas>>drawRectangle:color:borderWidth:borderColor: > BalloonCanvas>>fillRectangle:fillStyle: > FormCanvas>>balloonFillRectangle:fillStyle: > FormCanvas>>fillRectangle:fillStyle: > FormCanvas(Canvas)>>fillRectangle:fillStyle:borderStyle: > PasteUpMorph(Morph)>>drawOn: > PasteUpMorph>>drawOn: > [] in WorldState>>drawWorld:submorphs:invalidAreasOn: {[:r | rectToFill := > r. i := 1. [rectToFill isNil or: [i > n]] whileFa...]} > Rectangle>>allAreasOutsideList:startingAt:do: > Rectangle>>allAreasOutsideList:do: > [] in WorldState>>drawWorld:submorphs:invalidAreasOn: {[:dirtyRect | > dirtyRect allAreasOutsideList: validList do: [:r | rec...]} > Array(SequenceableCollection)>>do: > WorldState>>drawWorld:submorphs:invalidAreasOn: > [] in WorldState>>displayWorld:submorphs: {[worldDamageRects := self > drawWorld: aWorld submorphs: submorphs ...]} > FormCanvas>>roundCornersOf:in:during: > FormCanvas(Canvas)>>roundCornersOf:during: > WorldState>>displayWorld:submorphs: > PasteUpMorph>>privateOuterDisplayWorld > PasteUpMorph>>displayWorld > [] in WorldState>>displayWorldSafely: {[aWorld displayWorld]} > BlockContext>>on:do: > BlockContext>>ifError: > WorldState>>displayWorldSafely: > WorldState>>doOneCycleNowFor: > WorldState>>doOneCycleFor: > PasteUpMorph>>doOneCycle > [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor yield. > false] whileFalse. nil]} > [] in BlockContext>>newProcess {[self value. Processor terminateActive]} > > > -----Original Message----- > From: [hidden email] > [mailto:[hidden email]] On Behalf Of Andreas > Raab > Sent: Saturday, October 31, 2009 4:13 PM > To: A friendly place to get answers to even the most basic questions about > Squeak. > Subject: [Newbies] Re: Vista compatibility > > Christine Wolfe wrote: >> I am using Squeak on a Vista PC. When I have Squeak open and switch to >> another window, after about 2 minutes, Squeak crashes and brings up the >> Emergency Evaluator. The information in the evaluator dump doesn't >> reference any of my code but I realize it still could have been >> something I was running that triggered it. This happens when I have my >> System browser open and it doesn't matter whether or not I have any >> morphs displayed in world. I haven't tried switching with the System >> browser closed. Has anyone else had this trouble? The error message at >> the top of the Emergency Evaluator stack is: "Error: a primitive has >> failed." > > Interesting. Do you get a SqueakDebug.log when this happens? Usually, > the emergency evaluator pops up when there is an error inside the error > handling but there is a chance that the SqueakDebug.log has already been > written at this point. If you can find it, please send it. > > Cheers, > - Adnreas > _______________________________________________ > Beginners mailing list > [hidden email] > http://lists.squeakfoundation.org/mailman/listinfo/beginners _______________________________________________ Beginners mailing list [hidden email] http://lists.squeakfoundation.org/mailman/listinfo/beginners |
Wow! I'm impressed that you could make sense of all that!
I'm not using a dual monitor setup or anything unusual as far as I am aware. During my last test - the one that produced the dump, I had the squeak window neither minimized nor maximized. Here's what I've done since we last talked. In the 2 min window after starting up my image, I did a FileOut of my project. Then I opened a new image and did a FileIn. It's been 7 minutes and so far I'm not having a problem with the new image. Keep your fingers crossed for me. Christine -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Andreas Raab Sent: Saturday, October 31, 2009 4:40 PM To: A friendly place to get answers to even the most basic questions about Squeak. Subject: [Newbies] Re: Vista compatibility Christine Wolfe wrote: > Hi Andreas, > > Thank you for responding. Thanks for providing the info ;-) > Here's what I just did to try to figure it out: > > I deleted my old log. > I restarted my computer. > I opened my image at 4:14 > I opened the browser > At 4:16 I got the emergency evaluator. > > Here is the new dump: It looks like the problem is caused by the invalid clipping rectangle here: > clipRect: 0@1073772165 corner: 30@1010 but it's completely unclear to me how we'd end up with a clipping rectangle like this. Are you perhaps using a multi-monitor setup or some sort of virtual desktop software? If so, can you try to see if the same thing happens when you run Squeak on the primary display? Or is Squeak minimized when the problem occurs? Also, when the error happens, can you go back into the emergency evaluator, and print out the result of the following expressions: World bounds. Display extent. DisplayScreen actualScreenSize. This should tell us a little more about the issue. Cheers, - Andreas > > Error: Error: a primitive has failed > 31 October 2009 4:16:10 pm > > VM: Win32 - a SmalltalkImage > Image: Squeak3.10.2 [latest update: #7179] > > SecurityManager state: > Restricted: false > FileAccess: true > SocketAccess: true > Working Dir C:\Users\Christine\Documents\01OhioU\01EDCT\EDCT 793C Fall > 09\Squeak\Squeak3.10.2-7179 > Trusted Dir C:\Users\Christine\Documents\01OhioU\01EDCT\EDCT 793C Fall > 09\Squeak\Squeak3.10.2-7179\Christine > Untrusted Dir C:\My Squeak\Christine > > BalloonEngine(Object)>>error: > Receiver: a BalloonEngine > Arguments and temporary variables: > aString: 'Error: a primitive has failed' > Receiver's instance variables: > workBuffer: a BalloonBuffer > span: a Bitmap of length 2048 > bitBlt: a GrafPort > forms: #() > clipRect: 0@1073772165 corner: 30@1010 > destOffset: 0@0 > externals: an OrderedCollection() > aaLevel: 1 > edgeTransform: nil > colorTransform: nil > deferred: false > postFlushNeeded: nil > > [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := > [errCtx := errCtx sender. [errCtx no...]} > Arguments and temporary variables: > aWorld: a PasteUpMorph(1622) [world] > err: 'Error: a primitive has failed' > rcvr: a BalloonEngine > errCtx: PasteUpMorph(Morph)>>drawOn: > errMorph: a PasteUpMorph(1622) [world] > > BlockContext>>valueWithPossibleArgs: > Receiver: [] in WorldState>>displayWorldSafely: {[:err :rcvr | > errCtx := thisContext. [errCtx := e...etc... > Arguments and temporary variables: > anArray: an Array('Error: a primitive has failed' a > BalloonEngine) > Receiver's instance variables: > sender: BlockContext>>valueWithPossibleArgs: > pc: 121 > stackp: 0 > nargs: 2 > startpc: 74 > home: WorldState>>displayWorldSafely: > > [] in BlockContext>>ifError: {[:ex | errorHandlerBlock > valueWithPossibleArgs: {ex description. ex receiver}]} > Arguments and temporary variables: > errorHandlerBlock: [] in > WorldState>>displayWorldSafely: {[:err :rcvr | errCtx...etc... > ex: Error: a primitive has failed > > > --- The full stack --- > BalloonEngine(Object)>>error: > [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := > [errCtx := errCtx sender. [errCtx no...]} > BlockContext>>valueWithPossibleArgs: > [] in BlockContext>>ifError: {[:ex | errorHandlerBlock > valueWithPossibleArgs: {ex description. ex receiver}]} > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - > BlockContext>>valueWithPossibleArgs: > [] in MethodContext(ContextPart)>>handleSignal: {[(self tempAt: 2) > valueWithPossibleArgs: {exception}]} > BlockContext>>ensure: > MethodContext(ContextPart)>>handleSignal: > Error(Exception)>>signal > Error(Exception)>>signal: > BalloonEngine(Object)>>error: > BalloonEngine(Object)>>primitiveFailed > BalloonEngine>>primSetClipRect: > BalloonEngine>>reset > BalloonEngine>>resetIfNeeded > BalloonEngine>>drawRectangle:fill:borderWidth:borderColor:transform: > BalloonCanvas>>drawRectangle:color:borderWidth:borderColor: > BalloonCanvas>>fillRectangle:fillStyle: > FormCanvas>>balloonFillRectangle:fillStyle: > FormCanvas>>fillRectangle:fillStyle: > FormCanvas(Canvas)>>fillRectangle:fillStyle:borderStyle: > PasteUpMorph(Morph)>>drawOn: > PasteUpMorph>>drawOn: > [] in WorldState>>drawWorld:submorphs:invalidAreasOn: {[:r | rectToFill > r. i := 1. [rectToFill isNil or: [i > n]] whileFa...]} > Rectangle>>allAreasOutsideList:startingAt:do: > Rectangle>>allAreasOutsideList:do: > [] in WorldState>>drawWorld:submorphs:invalidAreasOn: {[:dirtyRect | > dirtyRect allAreasOutsideList: validList do: [:r | rec...]} > Array(SequenceableCollection)>>do: > WorldState>>drawWorld:submorphs:invalidAreasOn: > [] in WorldState>>displayWorld:submorphs: {[worldDamageRects := self > drawWorld: aWorld submorphs: submorphs ...]} > FormCanvas>>roundCornersOf:in:during: > FormCanvas(Canvas)>>roundCornersOf:during: > WorldState>>displayWorld:submorphs: > PasteUpMorph>>privateOuterDisplayWorld > PasteUpMorph>>displayWorld > [] in WorldState>>displayWorldSafely: {[aWorld displayWorld]} > BlockContext>>on:do: > BlockContext>>ifError: > WorldState>>displayWorldSafely: > WorldState>>doOneCycleNowFor: > WorldState>>doOneCycleFor: > PasteUpMorph>>doOneCycle > [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor > false] whileFalse. nil]} > [] in BlockContext>>newProcess {[self value. Processor terminateActive]} > > > -----Original Message----- > From: [hidden email] > [mailto:[hidden email]] On Behalf Of Andreas > Raab > Sent: Saturday, October 31, 2009 4:13 PM > To: A friendly place to get answers to even the most basic questions about > Squeak. > Subject: [Newbies] Re: Vista compatibility > > Christine Wolfe wrote: >> I am using Squeak on a Vista PC. When I have Squeak open and switch to >> another window, after about 2 minutes, Squeak crashes and brings up the >> Emergency Evaluator. The information in the evaluator dump doesn't >> reference any of my code but I realize it still could have been >> something I was running that triggered it. This happens when I have my >> System browser open and it doesn't matter whether or not I have any >> morphs displayed in world. I haven't tried switching with the System >> browser closed. Has anyone else had this trouble? The error message at >> the top of the Emergency Evaluator stack is: "Error: a primitive has >> failed." > > Interesting. Do you get a SqueakDebug.log when this happens? Usually, > the emergency evaluator pops up when there is an error inside the error > handling but there is a chance that the SqueakDebug.log has already been > written at this point. If you can find it, please send it. > > Cheers, > - Adnreas > _______________________________________________ > Beginners mailing list > [hidden email] > http://lists.squeakfoundation.org/mailman/listinfo/beginners _______________________________________________ Beginners mailing list [hidden email] http://lists.squeakfoundation.org/mailman/listinfo/beginners _______________________________________________ Beginners mailing list [hidden email] http://lists.squeakfoundation.org/mailman/listinfo/beginners |
In reply to this post by Andreas.Raab
Hi Andreas,
I decided to try it again with the old image after I sent this reply and true to form it crashed at 2 mins. I noticed that it tried to open the debug window right before the Emergency Evaluator popped up. Here are the results of the expressions you asked me to get: World bounds. 0@0 courner: 1096@1010 Display extent. 1096@1010 DisplayScreen actualScreenSize. 1096@1010 So far so good on the "clean" image.... ____________________________________________________________________ Wow! I'm impressed that you could make sense of all that! I'm not using a dual monitor setup or anything unusual as far as I am aware. During my last test - the one that produced the dump, I had the squeak window neither minimized nor maximized. Here's what I've done since we last talked. In the 2 min window after starting up my image, I did a FileOut of my project. Then I opened a new image and did a FileIn. It's been 7 minutes and so far I'm not having a problem with the new image. Keep your fingers crossed for me. Christine -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Andreas Raab Sent: Saturday, October 31, 2009 4:40 PM To: A friendly place to get answers to even the most basic questions about Squeak. Subject: [Newbies] Re: Vista compatibility Christine Wolfe wrote: > Hi Andreas, > > Thank you for responding. Thanks for providing the info ;-) > Here's what I just did to try to figure it out: > > I deleted my old log. > I restarted my computer. > I opened my image at 4:14 > I opened the browser > At 4:16 I got the emergency evaluator. > > Here is the new dump: It looks like the problem is caused by the invalid clipping rectangle here: > clipRect: 0@1073772165 corner: 30@1010 but it's completely unclear to me how we'd end up with a clipping rectangle like this. Are you perhaps using a multi-monitor setup or some sort of virtual desktop software? If so, can you try to see if the same thing happens when you run Squeak on the primary display? Or is Squeak minimized when the problem occurs? Also, when the error happens, can you go back into the emergency evaluator, and print out the result of the following expressions: World bounds. Display extent. DisplayScreen actualScreenSize. This should tell us a little more about the issue. Cheers, - Andreas > > Error: Error: a primitive has failed > 31 October 2009 4:16:10 pm > > VM: Win32 - a SmalltalkImage > Image: Squeak3.10.2 [latest update: #7179] > > SecurityManager state: > Restricted: false > FileAccess: true > SocketAccess: true > Working Dir C:\Users\Christine\Documents\01OhioU\01EDCT\EDCT 793C Fall > 09\Squeak\Squeak3.10.2-7179 > Trusted Dir C:\Users\Christine\Documents\01OhioU\01EDCT\EDCT 793C Fall > 09\Squeak\Squeak3.10.2-7179\Christine > Untrusted Dir C:\My Squeak\Christine > > BalloonEngine(Object)>>error: > Receiver: a BalloonEngine > Arguments and temporary variables: > aString: 'Error: a primitive has failed' > Receiver's instance variables: > workBuffer: a BalloonBuffer > span: a Bitmap of length 2048 > bitBlt: a GrafPort > forms: #() > clipRect: 0@1073772165 corner: 30@1010 > destOffset: 0@0 > externals: an OrderedCollection() > aaLevel: 1 > edgeTransform: nil > colorTransform: nil > deferred: false > postFlushNeeded: nil > > [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := > [errCtx := errCtx sender. [errCtx no...]} > Arguments and temporary variables: > aWorld: a PasteUpMorph(1622) [world] > err: 'Error: a primitive has failed' > rcvr: a BalloonEngine > errCtx: PasteUpMorph(Morph)>>drawOn: > errMorph: a PasteUpMorph(1622) [world] > > BlockContext>>valueWithPossibleArgs: > Receiver: [] in WorldState>>displayWorldSafely: {[:err :rcvr | > errCtx := thisContext. [errCtx := e...etc... > Arguments and temporary variables: > anArray: an Array('Error: a primitive has failed' a > BalloonEngine) > Receiver's instance variables: > sender: BlockContext>>valueWithPossibleArgs: > pc: 121 > stackp: 0 > nargs: 2 > startpc: 74 > home: WorldState>>displayWorldSafely: > > [] in BlockContext>>ifError: {[:ex | errorHandlerBlock > valueWithPossibleArgs: {ex description. ex receiver}]} > Arguments and temporary variables: > errorHandlerBlock: [] in > WorldState>>displayWorldSafely: {[:err :rcvr | errCtx...etc... > ex: Error: a primitive has failed > > > --- The full stack --- > BalloonEngine(Object)>>error: > [] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx := > [errCtx := errCtx sender. [errCtx no...]} > BlockContext>>valueWithPossibleArgs: > [] in BlockContext>>ifError: {[:ex | errorHandlerBlock > valueWithPossibleArgs: {ex description. ex receiver}]} > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - > BlockContext>>valueWithPossibleArgs: > [] in MethodContext(ContextPart)>>handleSignal: {[(self tempAt: 2) > valueWithPossibleArgs: {exception}]} > BlockContext>>ensure: > MethodContext(ContextPart)>>handleSignal: > Error(Exception)>>signal > Error(Exception)>>signal: > BalloonEngine(Object)>>error: > BalloonEngine(Object)>>primitiveFailed > BalloonEngine>>primSetClipRect: > BalloonEngine>>reset > BalloonEngine>>resetIfNeeded > BalloonEngine>>drawRectangle:fill:borderWidth:borderColor:transform: > BalloonCanvas>>drawRectangle:color:borderWidth:borderColor: > BalloonCanvas>>fillRectangle:fillStyle: > FormCanvas>>balloonFillRectangle:fillStyle: > FormCanvas>>fillRectangle:fillStyle: > FormCanvas(Canvas)>>fillRectangle:fillStyle:borderStyle: > PasteUpMorph(Morph)>>drawOn: > PasteUpMorph>>drawOn: > [] in WorldState>>drawWorld:submorphs:invalidAreasOn: {[:r | rectToFill > r. i := 1. [rectToFill isNil or: [i > n]] whileFa...]} > Rectangle>>allAreasOutsideList:startingAt:do: > Rectangle>>allAreasOutsideList:do: > [] in WorldState>>drawWorld:submorphs:invalidAreasOn: {[:dirtyRect | > dirtyRect allAreasOutsideList: validList do: [:r | rec...]} > Array(SequenceableCollection)>>do: > WorldState>>drawWorld:submorphs:invalidAreasOn: > [] in WorldState>>displayWorld:submorphs: {[worldDamageRects := self > drawWorld: aWorld submorphs: submorphs ...]} > FormCanvas>>roundCornersOf:in:during: > FormCanvas(Canvas)>>roundCornersOf:during: > WorldState>>displayWorld:submorphs: > PasteUpMorph>>privateOuterDisplayWorld > PasteUpMorph>>displayWorld > [] in WorldState>>displayWorldSafely: {[aWorld displayWorld]} > BlockContext>>on:do: > BlockContext>>ifError: > WorldState>>displayWorldSafely: > WorldState>>doOneCycleNowFor: > WorldState>>doOneCycleFor: > PasteUpMorph>>doOneCycle > [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor > false] whileFalse. nil]} > [] in BlockContext>>newProcess {[self value. Processor terminateActive]} > > > -----Original Message----- > From: [hidden email] > [mailto:[hidden email]] On Behalf Of Andreas > Raab > Sent: Saturday, October 31, 2009 4:13 PM > To: A friendly place to get answers to even the most basic questions about > Squeak. > Subject: [Newbies] Re: Vista compatibility > > Christine Wolfe wrote: >> I am using Squeak on a Vista PC. When I have Squeak open and switch to >> another window, after about 2 minutes, Squeak crashes and brings up the >> Emergency Evaluator. The information in the evaluator dump doesn't >> reference any of my code but I realize it still could have been >> something I was running that triggered it. This happens when I have my >> System browser open and it doesn't matter whether or not I have any >> morphs displayed in world. I haven't tried switching with the System >> browser closed. Has anyone else had this trouble? The error message at >> the top of the Emergency Evaluator stack is: "Error: a primitive has >> failed." > > Interesting. Do you get a SqueakDebug.log when this happens? Usually, > the emergency evaluator pops up when there is an error inside the error > handling but there is a chance that the SqueakDebug.log has already been > written at this point. If you can find it, please send it. > > Cheers, > - Adnreas > _______________________________________________ > Beginners mailing list > [hidden email] > http://lists.squeakfoundation.org/mailman/listinfo/beginners _______________________________________________ Beginners mailing list [hidden email] http://lists.squeakfoundation.org/mailman/listinfo/beginners _______________________________________________ Beginners mailing list [hidden email] http://lists.squeakfoundation.org/mailman/listinfo/beginners |
Free forum by Nabble | Edit this page |