that i dont really know how to describe... so i'm going to attach a screenshot...
i opened the lastest pharo dev image... checked to see if the redraw bug that i have been experiencing was still there...
went to quick and got a sudden flurry of message not understood errors ( see screenshot of the rearranged windows )... i wasnt able to reliably reproduce but, when doing the same thing ( open and quit... ) about 2 out of every five times i
got message not understood windows popping up. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
It would be helpful if you attach debug.log. This file is located in the same directory where the image is.
Cheers, Mariano 2009/6/3 Sean Allen <[hidden email]> that i dont really know how to describe... so i'm going to attach a screenshot... _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
dont have one. there isnt any debug.log in the directory with the image ( or any other pharo associated directory. )
2009/6/3 Mariano Martinez Peck <[hidden email]> It would be helpful if you attach debug.log. This file is located in the same directory where the image is. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
This is controlled by a Preference setting...
Nicolas 2009/6/3 Sean Allen <[hidden email]>: > dont have one. there isnt any debug.log in the directory with the image ( or > any other pharo associated directory. ) > > 2009/6/3 Mariano Martinez Peck <[hidden email]> >> >> It would be helpful if you attach debug.log. This file is located in the >> same directory where the image is. >> >> Cheers, >> >> Mariano >> >> 2009/6/3 Sean Allen <[hidden email]> >>> >>> that i dont really know how to describe... so i'm going to attach a >>> screenshot... >>> i opened the lastest pharo dev image... checked to see if the redraw bug >>> that i have been experiencing was still there... >>> went to quick and got a sudden flurry of message not understood errors ( >>> see screenshot of the rearranged windows )... >>> i wasnt able to reliably reproduce but, when doing the same thing ( open >>> and quit... ) about 2 out of every five times i >>> got message not understood windows popping up. >>> >>> >>> _______________________________________________ >>> Pharo-project mailing list >>> [hidden email] >>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> >> >> _______________________________________________ >> Pharo-project mailing list >> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
I didn't know that. logDebuggerStackToFile is the option?
It's strange because this is enable by default and I don't think Sean change it. On Wed, Jun 3, 2009 at 5:39 PM, Nicolas Cellier <[hidden email]> wrote: This is controlled by a Preference setting... _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
I think I founded the problem... I don't know what makes it happen or how to solve it yet :-)
But the problem is a raise condition. In method MouseOverHandler>>processMouseOver: anEvent the instance variable leftMorphs is set to nil, but when accessing that variable there
is no check for nil. So, if processMouseOver: anEvent is running in two different processes, in one leftMorphs could set to nil while in the other process is still been used... Is it possible for processMouseOver: anEvent to be evaluated in more than one process? If that is true, so that is the problem... if not, nothing makes sense...
2009/6/3 Mariano Martinez Peck <[hidden email]> I didn't know that. logDebuggerStackToFile is the option? _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Mariano Martinez Peck
i didnt change anything. take a look and see if it is set.
2009/6/3 Mariano Martinez Peck <[hidden email]> I didn't know that. logDebuggerStackToFile is the option? _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Mariano Martinez Peck
2009/6/3 Mariano Martinez Peck <[hidden email]>
yeah that is enabled and i dont have a debug log.
what is the difference between enabled and local checkboxes?
_______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
2009/6/3 Sean Allen <[hidden email]>
I saw you are in Mac world which I know very little about. But, could this be a matter of permissions? what about a ls -la or something like that to see this ? Any other reason that can cause this ?
Several times I asked myself this. I don't know :(
_______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
On Wed, Jun 3, 2009 at 7:27 PM, Mariano Martinez Peck <[hidden email]> wrote:
Now I wonder....ALL errors are logged in debug.log ???
_______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Mariano Martinez Peck
2009/6/3 Mariano Martinez Peck <[hidden email]>
permissions are fine. this gets even weirder, i left the image open and 10 minutes after the debugger was opened, the debug.log was created. here is the content from the file, given how long it took to be created, i'm not sure it has everything:
MessageNotUnderstood: UndefinedObject>>includes: 3 June 2009 4:19:55 pm VM: Mac OS - intel - 1057 - Squeak3.8.1 of '28 Aug 2006' [latest update: #6747] Squeak VM 4.1.1b2
Image: Pharo0.1 [Latest update: #10318] SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /Users/spooneybarger/Downloads/pharo0.1-10318dev09.05.4
Trusted Dir /foobar/tooBar/forSqueak/bogus Untrusted Dir /Users/spooneybarger/Library/Preferences/Squeak/Internet/My Squeak UndefinedObject(Object)>>doesNotUnderstand: #includes:
Receiver: nil Arguments and temporary variables: aMessage: includes: a QuestionDialogWindow(14)
exception: MessageNotUnderstood: UndefinedObject>>includes: resumeValue: nil
Receiver's instance variables: nil MouseOverHandler>>noticeMouseOver:event: Receiver: a MouseOverHandler
Arguments and temporary variables: aMorph: a QuestionDialogWindow(14)
anEvent: [223@85 mouseOver nil nil] Receiver's instance variables:
mouseOverMorphs: an Array(a PluggableButtonMorphPlus(1300) an OBButtonBar(63) a...etc...
enteredMorphs: nil overMorphs: nil
leftMorphs: nil HandMorph>>noticeMouseOver:event: Receiver: a HandMorph(3216)
Arguments and temporary variables: aMorph: a QuestionDialogWindow(14)
anEvent: [223@85 mouseOver nil nil] Receiver's instance variables:
bounds: 326@214 corner: 342@230 owner: a PasteUpMorph(1622) [world]
submorphs: #() fullBounds: 326@214 corner: 342@230
color: Color blue extension: a MorphExtension (539) [eventHandler = an EventHandler]
mouseFocus: nil keyboardFocus: a PluggableButtonMorphPlus(3403)
eventListeners: nil mouseListeners: nil
keyboardListeners: nil mouseClickState: nil
mouseOverHandler: a MouseOverHandler lastMouseEvent: [326@214 mouseUp 58531 nil]
targetOffset: 28@20 damageRecorder: a DamageRecorder
cacheCanvas: nil cachedCanvasHasHoles: true
temporaryCursor: nil temporaryCursorOffset: nil
hardwareCursor: nil hasChanged: true
savedPatch: nil userInitials: ''
lastEventBuffer: #(1 58531 326 214 0 0 0 1) lastKeyScanCode: 13
combinedChar: nil QuestionDialogWindow(Morph)>>handleMouseOver:
Receiver: a QuestionDialogWindow(14) Arguments and temporary variables: anEvent: [223@85 mouseOver nil nil]
Receiver's instance variables: bounds: 34@16 corner: 314@146
owner: a PasteUpMorph(1622) [world] submorphs: an Array(an AlignmentMorph(3705) a PanelMorph(2577))
fullBounds: 26@12 corner: 322@156 color: (Color r: 0.816 g: 0.812 b: 0.812)
extension: a MorphExtension (864) [other: (layoutPolicy -> a ProportionalLayou...etc...
borderWidth: 1 borderColor: Color lightGray
model: nil slotName: nil
open: false labelString: 'Question'
stripes: an Array(a RectangleMorph(1983) a RectangleMorph(1221)) label: a LabelMorph(832)'Question'
closeBox: nil collapseBox: nil
activeOnlyOnTop: true paneMorphs: an Array(a PanelMorph(2577))
paneRects: nil collapsedFrame: nil
fullFrame: 34@16 corner: 314@146 isCollapsed: false
menuBox: nil mustNotClose: false
labelWidgetAllowance: 0 updatablePanes: #()
allowReframeHandles: true labelArea: an AlignmentMorph(3705)
expandBox: nil cancelled: true
textMorph: a TextMorph(1743) textFont: a LogicalFont
familyName: DejaVu Sans emphasis: nil pointSize: 10 ...etc... iconMorph: an ImageMorph(2010)
answer: nil MouseEvent>>sentTo: Receiver: [223@85 mouseOver nil nil]
Arguments and temporary variables: anObject: a QuestionDialogWindow(14)
Receiver's instance variables: timeStamp: nil
source: a HandMorph(3216) windowIndex: nil
type: #mouseOver buttons: 0
position: 223@85 handler: nil
wasHandled: false QuestionDialogWindow(Morph)>>handleEvent:
Receiver: a QuestionDialogWindow(14) Arguments and temporary variables: anEvent: [223@85 mouseOver nil nil]
Receiver's instance variables: bounds: 34@16 corner: 314@146
owner: a PasteUpMorph(1622) [world] submorphs: an Array(an AlignmentMorph(3705) a PanelMorph(2577))
fullBounds: 26@12 corner: 322@156 color: (Color r: 0.816 g: 0.812 b: 0.812)
extension: a MorphExtension (864) [other: (layoutPolicy -> a ProportionalLayou...etc...
borderWidth: 1 borderColor: Color lightGray
model: nil slotName: nil
open: false labelString: 'Question'
stripes: an Array(a RectangleMorph(1983) a RectangleMorph(1221)) label: a LabelMorph(832)'Question'
closeBox: nil collapseBox: nil
activeOnlyOnTop: true paneMorphs: an Array(a PanelMorph(2577))
paneRects: nil collapsedFrame: nil
fullFrame: 34@16 corner: 314@146 isCollapsed: false
menuBox: nil mustNotClose: false
labelWidgetAllowance: 0 updatablePanes: #()
allowReframeHandles: true labelArea: an AlignmentMorph(3705)
expandBox: nil cancelled: true
textMorph: a TextMorph(1743) textFont: a LogicalFont
familyName: DejaVu Sans emphasis: nil pointSize: 10 ...etc... iconMorph: an ImageMorph(2010)
answer: nil MorphicEventDispatcher>>dispatchDefault:with:
Receiver: a MorphicEventDispatcher Arguments and temporary variables: anEvent: [223@85 mouseOver nil nil]
aMorph: a QuestionDialogWindow(14) localEvt: [223@85 mouseOver nil nil]
index: 3 child: a PanelMorph(2577)
morphs: an Array(an AlignmentMorph(3705) a PanelMorph(2577)) inside: true
Receiver's instance variables: lastType: #mouseOver
lastDispatch: #dispatchDefault:with: MorphicEventDispatcher>>dispatchEvent:with:
Receiver: a MorphicEventDispatcher Arguments and temporary variables: anEvent: [223@85 mouseOver nil nil]
aMorph: a QuestionDialogWindow(14) Receiver's instance variables:
lastType: #mouseOver lastDispatch: #dispatchDefault:with:
QuestionDialogWindow(Morph)>>processEvent:using: Receiver: a QuestionDialogWindow(14) Arguments and temporary variables:
anEvent: [223@85 mouseOver nil nil] defaultDispatcher: a MorphicEventDispatcher
Receiver's instance variables: bounds: 34@16 corner: 314@146
owner: a PasteUpMorph(1622) [world] submorphs: an Array(an AlignmentMorph(3705) a PanelMorph(2577))
fullBounds: 26@12 corner: 322@156 color: (Color r: 0.816 g: 0.812 b: 0.812)
extension: a MorphExtension (864) [other: (layoutPolicy -> a ProportionalLayou...etc...
borderWidth: 1 borderColor: Color lightGray
model: nil slotName: nil
open: false labelString: 'Question'
stripes: an Array(a RectangleMorph(1983) a RectangleMorph(1221)) label: a LabelMorph(832)'Question'
closeBox: nil collapseBox: nil
activeOnlyOnTop: true paneMorphs: an Array(a PanelMorph(2577))
paneRects: nil collapsedFrame: nil
fullFrame: 34@16 corner: 314@146 isCollapsed: false
menuBox: nil mustNotClose: false
labelWidgetAllowance: 0 updatablePanes: #()
allowReframeHandles: true labelArea: an AlignmentMorph(3705)
expandBox: nil cancelled: true
textMorph: a TextMorph(1743) textFont: a LogicalFont
familyName: DejaVu Sans emphasis: nil pointSize: 10 ...etc... iconMorph: an ImageMorph(2010)
answer: nil MorphicEventDispatcher>>dispatchDefault:with:
Receiver: a MorphicEventDispatcher Arguments and temporary variables: anEvent: [223@85 mouseOver nil nil]
aMorph: a PasteUpMorph(1622) [world] localEvt: [223@85 mouseOver nil nil]
index: 2 child: a QuestionDialogWindow(14)
morphs: an Array(a TaskbarMorph(3095) a QuestionDialogWindow(14) a PreferenceBr...etc...
inside: false Receiver's instance variables:
lastType: #mouseOver lastDispatch: #dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with: Receiver: a MorphicEventDispatcher Arguments and temporary variables:
anEvent: [223@85 mouseOver nil nil] aMorph: a PasteUpMorph(1622) [world]
Receiver's instance variables: lastType: #mouseOver
lastDispatch: #dispatchDefault:with: PasteUpMorph(Morph)>>processEvent:using:
Receiver: a PasteUpMorph(1622) [world] Arguments and temporary variables:
anEvent: [223@85 mouseOver nil nil] defaultDispatcher: a MorphicEventDispatcher
Receiver's instance variables: bounds: 0@0 corner: 1216@771
owner: nil submorphs: an Array(a TaskbarMorph(3095) a SystemWindow(3034) a SystemWindow(21...etc...
fullBounds: nil color: (Color r: 0.97 g: 0.98 b: 1.0)
extension: a MorphExtension (2543) [eventHandler = an EventHandler] [other: (...etc...
borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0)
presenter: a Presenter (1246) model: a MorphicModel(1926)
cursor: 1 padding: 3
backgroundMorph: nil isPartsBin: nil
autoLineLayout: false indicateCursor: nil
resizeToFit: nil wantsMouseOverHalos: nil
worldState: a WorldState griddingOn: nil
PasteUpMorph>>processEvent:using: Receiver: a PasteUpMorph(1622) [world] Arguments and temporary variables:
anEvent: [223@85 mouseOver nil nil] defaultDispatcher: a MorphicEventDispatcher
priorWorld: a PasteUpMorph(1622) [world] result: nil
Receiver's instance variables: bounds: 0@0 corner: 1216@771
owner: nil submorphs: an Array(a TaskbarMorph(3095) a SystemWindow(3034) a SystemWindow(21...etc...
fullBounds: nil color: (Color r: 0.97 g: 0.98 b: 1.0)
extension: a MorphExtension (2543) [eventHandler = an EventHandler] [other: (...etc...
borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0)
presenter: a Presenter (1246) model: a MorphicModel(1926)
cursor: 1 padding: 3
backgroundMorph: nil isPartsBin: nil
autoLineLayout: false indicateCursor: nil
resizeToFit: nil wantsMouseOverHalos: nil
worldState: a WorldState griddingOn: nil
PasteUpMorph(Morph)>>processEvent: Receiver: a PasteUpMorph(1622) [world] Arguments and temporary variables:
anEvent: [223@85 mouseOver nil nil] Receiver's instance variables:
bounds: 0@0 corner: 1216@771 owner: nil
submorphs: an Array(a TaskbarMorph(3095) a SystemWindow(3034) a SystemWindow(21...etc...
fullBounds: nil color: (Color r: 0.97 g: 0.98 b: 1.0)
extension: a MorphExtension (2543) [eventHandler = an EventHandler] [other: (...etc...
borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0)
presenter: a Presenter (1246) model: a MorphicModel(1926)
cursor: 1 padding: 3
backgroundMorph: nil isPartsBin: nil
autoLineLayout: false indicateCursor: nil
resizeToFit: nil wantsMouseOverHalos: nil
worldState: a WorldState griddingOn: nil
HandMorph>>sendEvent:focus:clear: Receiver: a HandMorph(3216) Arguments and temporary variables:
anEvent: [223@85 mouseOver nil nil] focusHolder: nil
aBlock: [closure] in HandMorph>>sendMouseEvent: result: nil
Receiver's instance variables: bounds: 326@214 corner: 342@230
owner: a PasteUpMorph(1622) [world] submorphs: #()
fullBounds: 326@214 corner: 342@230 color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil
keyboardFocus: a PluggableButtonMorphPlus(3403) eventListeners: nil
mouseListeners: nil keyboardListeners: nil
mouseClickState: nil mouseOverHandler: a MouseOverHandler
lastMouseEvent: [326@214 mouseUp 58531 nil] targetOffset: 28@20
damageRecorder: a DamageRecorder cacheCanvas: nil
cachedCanvasHasHoles: true temporaryCursor: nil
temporaryCursorOffset: nil hardwareCursor: nil
hasChanged: true savedPatch: nil
userInitials: '' lastEventBuffer: #(1 58531 326 214 0 0 0 1)
lastKeyScanCode: 13 combinedChar: nil
HandMorph>>sendMouseEvent: Receiver: a HandMorph(3216) Arguments and temporary variables:
anEvent: [223@85 mouseOver nil nil] Receiver's instance variables:
bounds: 326@214 corner: 342@230 owner: a PasteUpMorph(1622) [world]
submorphs: #() fullBounds: 326@214 corner: 342@230
color: Color blue extension: a MorphExtension (539) [eventHandler = an EventHandler]
mouseFocus: nil keyboardFocus: a PluggableButtonMorphPlus(3403)
eventListeners: nil mouseListeners: nil
keyboardListeners: nil mouseClickState: nil
mouseOverHandler: a MouseOverHandler lastMouseEvent: [326@214 mouseUp 58531 nil]
targetOffset: 28@20 damageRecorder: a DamageRecorder
cacheCanvas: nil cachedCanvasHasHoles: true
temporaryCursor: nil temporaryCursorOffset: nil
hardwareCursor: nil hasChanged: true
savedPatch: nil userInitials: ''
lastEventBuffer: #(1 58531 326 214 0 0 0 1) lastKeyScanCode: 13
combinedChar: nil HandMorph>>handleEvent: Receiver: a HandMorph(3216)
Arguments and temporary variables: anEvent: [223@85 mouseOver nil nil]
evt: [223@85 mouseOver nil nil] ofs: nil
Receiver's instance variables: bounds: 326@214 corner: 342@230
owner: a PasteUpMorph(1622) [world] submorphs: #()
fullBounds: 326@214 corner: 342@230 color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil
keyboardFocus: a PluggableButtonMorphPlus(3403) eventListeners: nil
mouseListeners: nil keyboardListeners: nil
mouseClickState: nil mouseOverHandler: a MouseOverHandler
lastMouseEvent: [326@214 mouseUp 58531 nil] targetOffset: 28@20
damageRecorder: a DamageRecorder cacheCanvas: nil
cachedCanvasHasHoles: true temporaryCursor: nil
temporaryCursorOffset: nil hardwareCursor: nil
hasChanged: true savedPatch: nil
userInitials: '' lastEventBuffer: #(1 58531 326 214 0 0 0 1)
lastKeyScanCode: 13 combinedChar: nil
MouseOverHandler>>processMouseOver: Receiver: a MouseOverHandler Arguments and temporary variables:
<<error during printing> Receiver's instance variables: mouseOverMorphs: an Array(a PluggableButtonMorphPlus(1300) an OBButtonBar(63) a...etc...
enteredMorphs: nil overMorphs: nil
leftMorphs: nil HandMorph>>handleEvent: Receiver: a HandMorph(3216)
Arguments and temporary variables: anEvent: [223@85 mouseUp 12694 nil]
evt: [223@85 mouseUp 12694 nil] ofs: nil
Receiver's instance variables: bounds: 326@214 corner: 342@230
owner: a PasteUpMorph(1622) [world] submorphs: #()
fullBounds: 326@214 corner: 342@230 color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil
keyboardFocus: a PluggableButtonMorphPlus(3403) eventListeners: nil
mouseListeners: nil keyboardListeners: nil
mouseClickState: nil mouseOverHandler: a MouseOverHandler
lastMouseEvent: [326@214 mouseUp 58531 nil] targetOffset: 28@20
damageRecorder: a DamageRecorder cacheCanvas: nil
cachedCanvasHasHoles: true temporaryCursor: nil
temporaryCursorOffset: nil hardwareCursor: nil
hasChanged: true savedPatch: nil
userInitials: '' lastEventBuffer: #(1 58531 326 214 0 0 0 1)
lastKeyScanCode: 13 combinedChar: nil
HandMorph>>processEvents Receiver: a HandMorph(3216) Arguments and temporary variables:
evt: [223@85 mouseUp 12694 nil] evtBuf: #(1 12694 223 85 0 0 0 1)
type: 1 hadAny: false
Receiver's instance variables: bounds: 326@214 corner: 342@230
owner: a PasteUpMorph(1622) [world] submorphs: #()
fullBounds: 326@214 corner: 342@230 color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil
keyboardFocus: a PluggableButtonMorphPlus(3403) eventListeners: nil
mouseListeners: nil keyboardListeners: nil
mouseClickState: nil mouseOverHandler: a MouseOverHandler
lastMouseEvent: [326@214 mouseUp 58531 nil] targetOffset: 28@20
damageRecorder: a DamageRecorder cacheCanvas: nil
cachedCanvasHasHoles: true temporaryCursor: nil
temporaryCursorOffset: nil hardwareCursor: nil
hasChanged: true savedPatch: nil
userInitials: '' lastEventBuffer: #(1 58531 326 214 0 0 0 1)
lastKeyScanCode: 13 combinedChar: nil
[] in WorldState>>doOneCycleNowFor: Receiver: a WorldState Arguments and temporary variables:
<<error during printing> Receiver's instance variables: hands: an Array(a HandMorph(3216))
viewBox: 0@0 corner: 1216@771 canvas: a FormCanvas on: DisplayScreen(1216x771x32)
damageRecorder: a DamageRecorder stepList: a Heap(StepMessage(#stepAt: -> 3PButton(#toggleSelected 298))(3PButto...etc...
lastStepTime: 58514 lastStepMessage: nil
lastCycleTime: 58534 commandHistory: a CommandHistory
alarms: a Heap() lastAlarmTime: 58514
Array(SequenceableCollection)>>do: Receiver: an Array(a HandMorph(3216)) Arguments and temporary variables:
aBlock: [closure] in WorldState>>doOneCycleNowFor: index: 1
indexLimiT: 1 Receiver's instance variables:
an Array(a HandMorph(3216)) WorldState>>handsDo: Receiver: a WorldState Arguments and temporary variables:
aBlock: [closure] in WorldState>>doOneCycleNowFor: Receiver's instance variables:
hands: an Array(a HandMorph(3216)) viewBox: 0@0 corner: 1216@771
canvas: a FormCanvas on: DisplayScreen(1216x771x32) damageRecorder: a DamageRecorder
stepList: a Heap(StepMessage(#stepAt: -> 3PButton(#toggleSelected 298))(3PButto...etc...
lastStepTime: 58514 lastStepMessage: nil
lastCycleTime: 58534 commandHistory: a CommandHistory
alarms: a Heap() lastAlarmTime: 58514
WorldState>>doOneCycleNowFor: Receiver: a WorldState Arguments and temporary variables:
aWorld: a PasteUpMorph(1622) [world] Receiver's instance variables:
hands: an Array(a HandMorph(3216)) viewBox: 0@0 corner: 1216@771
canvas: a FormCanvas on: DisplayScreen(1216x771x32) damageRecorder: a DamageRecorder
stepList: a Heap(StepMessage(#stepAt: -> 3PButton(#toggleSelected 298))(3PButto...etc...
lastStepTime: 58514 lastStepMessage: nil
lastCycleTime: 58534 commandHistory: a CommandHistory
alarms: a Heap() lastAlarmTime: 58514
WorldState>>doOneCycleFor: Receiver: a WorldState Arguments and temporary variables:
aWorld: a PasteUpMorph(1622) [world] Receiver's instance variables:
hands: an Array(a HandMorph(3216)) viewBox: 0@0 corner: 1216@771
canvas: a FormCanvas on: DisplayScreen(1216x771x32) damageRecorder: a DamageRecorder
stepList: a Heap(StepMessage(#stepAt: -> 3PButton(#toggleSelected 298))(3PButto...etc...
lastStepTime: 58514 lastStepMessage: nil
lastCycleTime: 58534 commandHistory: a CommandHistory
alarms: a Heap() lastAlarmTime: 58514
PasteUpMorph>>doOneCycle Receiver: a PasteUpMorph(1622) [world] Arguments and temporary variables:
Receiver's instance variables: bounds: 0@0 corner: 1216@771
owner: nil submorphs: an Array(a TaskbarMorph(3095) a SystemWindow(3034) a SystemWindow(21...etc...
fullBounds: nil color: (Color r: 0.97 g: 0.98 b: 1.0)
extension: a MorphExtension (2543) [eventHandler = an EventHandler] [other: (...etc...
borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0)
presenter: a Presenter (1246) model: a MorphicModel(1926)
cursor: 1 padding: 3
backgroundMorph: nil isPartsBin: nil
autoLineLayout: false indicateCursor: nil
resizeToFit: nil wantsMouseOverHalos: nil
worldState: a WorldState griddingOn: nil
[] in Project class>>spawnNewProcess Receiver: Project Arguments and temporary variables:
Receiver's instance variables: superclass: Model
methodDict: a MethodDictionary(size 179) format: 172
instanceVariables: #('world' 'changeSet' 'transcript' 'parentProject' 'previous...etc...
organization: ('*Polymorph-Widgets' assureTaskbarPresenceMatchesPreference crea...etc...
subclasses: nil name: #Project
classPool: a Dictionary(#AllProjects->an OrderedCollection(a Project(<no name -...etc...
sharedPools: nil environment: Smalltalk
category: #'System-Support' traitComposition: {}
localSelectors: nil [] in BlockClosure>>newProcess Receiver: [closure] in Project class>>spawnNewProcess
Arguments and temporary variables: Receiver's instance variables:
outerContext: Project class>>spawnNewProcess startpc: 53
numArgs: 0 --- The full stack --- UndefinedObject(Object)>>doesNotUnderstand: #includes:
MouseOverHandler>>noticeMouseOver:event: HandMorph>>noticeMouseOver:event: QuestionDialogWindow(Morph)>>handleMouseOver: MouseEvent>>sentTo: QuestionDialogWindow(Morph)>>handleEvent:
MorphicEventDispatcher>>dispatchDefault:with: MorphicEventDispatcher>>dispatchEvent:with: QuestionDialogWindow(Morph)>>processEvent:using: MorphicEventDispatcher>>dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with: PasteUpMorph(Morph)>>processEvent:using: PasteUpMorph>>processEvent:using: PasteUpMorph(Morph)>>processEvent:
HandMorph>>sendEvent:focus:clear: HandMorph>>sendMouseEvent: HandMorph>>handleEvent: MouseOverHandler>>processMouseOver: HandMorph>>handleEvent:
HandMorph>>processEvents [] in WorldState>>doOneCycleNowFor: Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor:
WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in Project class>>spawnNewProcess [] in BlockClosure>>newProcess _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by hernan.wilkinson
That's an old one... a bit late here so look it up
on Mantis. ANYTHING that manipulates morphs etc. in a process other than the UI
process is liable to break in one way or another.
The mouse over handler is just one of the most
frequent (most events)...
The workaround we have is to do the nil check. A
Workaround though...
Regards, Gary
_______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by SeanTAllen
in hte past there were project = subworld and a property couuld be
local to the world or not. On Jun 3, 2009, at 10:24 PM, Sean Allen wrote: > > > 2009/6/3 Mariano Martinez Peck <[hidden email]> > I didn't know that. logDebuggerStackToFile is the option? > > It's strange because this is enable by default and I don't think > Sean change it. > > yeah that is enabled and i dont have a debug log. > > what is the difference between enabled and local checkboxes? > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Gary Chambers-4
Thanks.
I think that for the MouseOverHandler it would be good to know if this is related to Sensor changes. Mike what you think? Stef On Jun 4, 2009, at 1:53 AM, Gary Chambers wrote: > That's an old one... a bit late here so look it up on Mantis. > ANYTHING that manipulates morphs etc. in a process other than the UI > process is liable to break in one way or another. > > The mouse over handler is just one of the most frequent (most > events)... > > The workaround we have is to do the nil check. A Workaround though... > > Regards, Gary > ----- Original Message ----- > From: Hernan Wilkinson > To: [hidden email] > Sent: Wednesday, June 03, 2009 8:59 PM > Subject: Re: [Pharo-project] an odd bug > > I think I founded the problem... I don't know what makes it happen > or how to solve it yet :-) > But the problem is a raise condition. In method > MouseOverHandler>>processMouseOver: anEvent the instance variable > leftMorphs is set to nil, but when accessing that variable there > is no check for nil. So, if processMouseOver: anEvent is running in > two different processes, in one leftMorphs could set to nil while in > the other process is still been used... > > Is it possible for processMouseOver: anEvent to be evaluated in more > than one process? If that is true, so that is the problem... if not, > nothing makes sense... > > 2009/6/3 Mariano Martinez Peck <[hidden email]> > I didn't know that. logDebuggerStackToFile is the option? > > It's strange because this is enable by default and I don't think > Sean change it. > > > > On Wed, Jun 3, 2009 at 5:39 PM, Nicolas Cellier <[hidden email] > > wrote: > This is controlled by a Preference setting... > > Nicolas > > 2009/6/3 Sean Allen <[hidden email]>: > > dont have one. there isnt any debug.log in the directory with the > image ( or > > any other pharo associated directory. ) > > > > 2009/6/3 Mariano Martinez Peck <[hidden email]> > >> > >> It would be helpful if you attach debug.log. This file is located > in the > >> same directory where the image is. > >> > >> Cheers, > >> > >> Mariano > >> > >> 2009/6/3 Sean Allen <[hidden email]> > >>> > >>> that i dont really know how to describe... so i'm going to > attach a > >>> screenshot... > >>> i opened the lastest pharo dev image... checked to see if the > redraw bug > >>> that i have been experiencing was still there... > >>> went to quick and got a sudden flurry of message not understood > errors ( > >>> see screenshot of the rearranged windows )... > >>> i wasnt able to reliably reproduce but, when doing the same > thing ( open > >>> and quit... ) about 2 out of every five times i > >>> got message not understood windows popping up. > >>> > >>> > >>> _______________________________________________ > >>> Pharo-project mailing list > >>> [hidden email] > >>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo- > project > >> > >> > >> _______________________________________________ > >> Pharo-project mailing list > >> [hidden email] > >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > > > > _______________________________________________ > > Pharo-project mailing list > > [hidden email] > > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project_______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Stéphane Ducasse wrote:
> Thanks. > > I think that for the MouseOverHandler it would be good to know if this > is related to Sensor changes. > Mike what you think? It shouldn't. On the Morphic side there weren't any changes to process behavior, it still pulls the events out of the queue in the step cycle. Michael _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
hmm, let me rectify what I said. Yesterday I had to errors related to this bug. The first one is the one that Sean says and I sent the fix in other mail. It check for leftMorphs to be nil in the method noticeMouseOver: event:
I look for sender of that message and are HandMorph and Morph, so that is not a raise condition but just something that can happen. But when fix that error I got another one in the method processMouseOver: , where it does "leftMorphs isEmpty " and there leftMorphs was nil and the only reason for that was a raise condition... but that error never happened againg....
Conclusion: I think just checking for nil in noticeMouseOver:event: is enough to solve the error, and I do not know why the other error happened but I may have been a really rare situation... Bye, Hernan. On Thu, Jun 4, 2009 at 4:11 AM, Michael Rueger <[hidden email]> wrote:
_______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Michael Rueger-6
On Thu, Jun 4, 2009 at 3:11 AM, Michael Rueger <[hidden email]> wrote:
Just as a bit more info. I used squeak for several months without ever seeing this error.
I used pharo for 3 months without seeing this error. I've only gotten this error in the latest images with the latest vm and get it constantly. Not occassionally, I can get this to happen at least
once every 120 seconds or so, sometimes more often. It would seem to be as an outsider, that something must have changed. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Sean Allen wrote:
> Just as a bit more info. I used squeak for several months without ever > seeing this error. > I used pharo for 3 months without seeing this error. I've only gotten > this error in the latest images > with the latest vm and get it constantly. Not occassionally, I can get > this to happen at least > once every 120 seconds or so, sometimes more often. It would seem to be > as an outsider, > that something must have changed. it definitely sounds like it. Would be good to investigate what might have changed in the call path that *sets* the variable to check why it is ending up being nil. Maybe it shouldn't be set or initialized to nil but to an empty collection in those cases? Michael _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
I was going to suggest exactly that.
As a rule, I never use nil because if you do it you will have to check for it somewhere... nil is the root of most of the problems! if not, look at all the errors I fixed in the other mail, most of them are because nil is being used.
So, instead of nil, another object has to be use, and like you said in this case an empty collection I think will work. I'm just changing that... I'll send the changes today (I hope).
Hernan.
On Thu, Jun 4, 2009 at 11:32 AM, Michael Rueger <[hidden email]> wrote:
_______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
That's the Null Object Pattern!
http://en.wikipedia.org/wiki/Null_Object_pattern 2009/6/4 Hernan Wilkinson <[hidden email]> I was going to suggest exactly that. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Free forum by Nabble | Edit this page |