[Pharo-project] OCompletion error "MessageNotUnderstood: receiver of "morph" is nil"
This happens when the popup of OCompletion is open and you do something else then accepting OCompletion. The popup is there, alive, and after a short timeout it should be closed. But when trying to do so....20 debuggers appear in my image. ECMenuMorph >> handleMouseEnter: anEvent self activeHand newKeyboardFocus: controller editor morph. anEvent wasHandled: true. it seems "controller editor" is answering nil. This is the stack: 13 June 2011 12:27:25 pm VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.56] Croquet Cog 3.0.0 Image: Pharo1.3a [Latest update: #13257] UndefinedObject(Object)>>doesNotUnderstand: #morph Receiver: nil Arguments and temporary variables: aMessage: morph exception: MessageNotUnderstood: receiver of "morph" is nil resumeValue: nil Receiver's instance variables: nil OMenuMorph(ECMenuMorph)>>handleMouseEnter: Receiver: an OMenuMorph(869793792) Arguments and temporary variables: anEvent: [324@500 273@512 mouseEnter 48058628 nil] Receiver's instance variables: bounds: 109@502 corner: 309@518 owner: nil submorphs: #() fullBounds: 109@502 corner: 309@518 color: (TranslucentColor r: 0.9 g: 0.9 b: 0.9 alpha: 0.016) extension: a MorphExtension (873725952) [eventHandler = an EventHandler; mouseD...etc... borderWidth: 1 borderColor: (TranslucentColor r: 0.5 g: 0.5 b: 0.5 alpha: 0.016) selected: 1 firstVisible: 1 titleStringMorph: nil controller: an OController context: an OContext pageHeight: 4 itemHeight: 16 detailMorph: nil detailPosition: 309@502 lastActivity: 48055845 MouseMoveEvent(MouseEvent)>>sentTo: Receiver: [324@500 273@512 mouseEnter 48058628 nil] Arguments and temporary variables: anObject: an OMenuMorph(869793792) Receiver's instance variables: timeStamp: 48058628 source: a HandMorph(843055104) windowIndex: nil type: #mouseEnter buttons: 0 position: 273@512 handler: nil wasHandled: false startPoint: 324@500 trail: {(290@508). (273@512)} MouseMoveEvent>>sentTo: Receiver: [324@500 273@512 mouseEnter 48058628 nil] Arguments and temporary variables: anObject: an OMenuMorph(869793792) Receiver's instance variables: timeStamp: 48058628 source: a HandMorph(843055104) windowIndex: nil type: #mouseEnter buttons: 0 position: 273@512 handler: nil wasHandled: false startPoint: 324@500 trail: {(290@508). (273@512)} OMenuMorph(Morph)>>handleEvent: Receiver: an OMenuMorph(869793792) Arguments and temporary variables: anEvent: [324@500 273@512 mouseEnter 48058628 nil] Receiver's instance variables: bounds: 109@502 corner: 309@518 owner: nil submorphs: #() fullBounds: 109@502 corner: 309@518 color: (TranslucentColor r: 0.9 g: 0.9 b: 0.9 alpha: 0.016) extension: a MorphExtension (873725952) [eventHandler = an EventHandler; mouseD...etc... borderWidth: 1 borderColor: (TranslucentColor r: 0.5 g: 0.5 b: 0.5 alpha: 0.016) selected: 1 firstVisible: 1 titleStringMorph: nil controller: an OController context: an OContext pageHeight: 4 itemHeight: 16 detailMorph: nil detailPosition: 309@502 lastActivity: 48055845 MouseOverHandler>>transform:from:andSendTo: Receiver: a MouseOverHandler Arguments and temporary variables: anEvent: [324@500 273@512 mouseEnter 48058628 nil] originalEvent: [324@500 273@512 mouseMove 48058628 nil] aMorph: an OMenuMorph(869793792) transformedEvent: [324@500 273@512 mouseEnter 48058628 nil] Receiver's instance variables: mouseOverMorphs: an Array(a ToggleMenuItemMorph(639369216)'Copy to clipboard' a...etc... enteredMorphs: a WriteStream #() overMorphs: a WriteStream #() leftMorphs: an OrderedCollection() [self transform: evt from: anEvent andSendTo: aLeftMorph] in MouseOverHandler>>inform:to:originatedFrom:ifNotFocusedDo: Receiver: a MouseOverHandler Arguments and temporary variables: evt: [324@500 273@512 mouseEnter 48058628 nil] aLeftMorph: an OMenuMorph(869793792) anEvent: [324@500 273@512 mouseMove 48058628 nil] Receiver's instance variables: mouseOverMorphs: an Array(a ToggleMenuItemMorph(639369216)'Copy to clipboard' a...etc... enteredMorphs: a WriteStream #() overMorphs: a WriteStream #() leftMorphs: an OrderedCollection() True>>ifTrue:ifFalse: Receiver: true Arguments and temporary variables: trueAlternativeBlock: [self transform: evt from: anEvent andSendTo: aLeft...etc... falseAlternativeBlock: [] Receiver's instance variables: true MouseOverHandler>>inform:to:originatedFrom:ifNotFocusedDo: Receiver: a MouseOverHandler Arguments and temporary variables: evt: [324@500 273@512 mouseEnter 48058628 nil] aLeftMorph: an OMenuMorph(869793792) anEvent: [324@500 273@512 mouseMove 48058628 nil] aBlock: [] Receiver's instance variables: mouseOverMorphs: an Array(a ToggleMenuItemMorph(639369216)'Copy to clipboard' a...etc... enteredMorphs: a WriteStream #() overMorphs: a WriteStream #() leftMorphs: an OrderedCollection() [:anEnteredMorph | self inform: asMouseEnterEvent to: anEnteredMorph originatedFrom: anEvent ifNotFocusedDo: []] in MouseOverHandler>>handleAsMouseEnter: Receiver: a MouseOverHandler Arguments and temporary variables: anEvent: an OMenuMorph(869793792) asMouseEnterEvent: [324@500 273@512 mouseMove 48058628 nil] anEnteredMorph: [324@500 273@512 mouseEnter 48058628 nil] Receiver's instance variables: mouseOverMorphs: an Array(a ToggleMenuItemMorph(639369216)'Copy to clipboard' a...etc... enteredMorphs: a WriteStream #() overMorphs: a WriteStream #() leftMorphs: an OrderedCollection() Array(SequenceableCollection)>>reverseDo: Receiver: an Array(an OMenuMorph(869793792)) Arguments and temporary variables: aBlock: [:anEnteredMorph | self inform: asMouseEnterEvent to: anEnteredMorp...etc... index: 1 Receiver's instance variables: an Array(an OMenuMorph(869793792)) MouseOverHandler>>handleAsMouseEnter: Receiver: a MouseOverHandler Arguments and temporary variables: anEvent: [324@500 273@512 mouseMove 48058628 nil] asMouseEnterEvent: [324@500 273@512 mouseEnter 48058628 nil] Receiver's instance variables: mouseOverMorphs: an Array(a ToggleMenuItemMorph(639369216)'Copy to clipboard' a...etc... enteredMorphs: a WriteStream #() overMorphs: a WriteStream #() leftMorphs: an OrderedCollection() MouseOverHandler>>processMouseOver: Receiver: a MouseOverHandler Arguments and temporary variables: anEvent: [324@500 273@512 mouseMove 48058628 nil] Receiver's instance variables: mouseOverMorphs: an Array(a ToggleMenuItemMorph(639369216)'Copy to clipboard' a...etc... enteredMorphs: a WriteStream #() overMorphs: a WriteStream #() leftMorphs: an OrderedCollection() HandMorph>>handleEvent: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [324@500 273@512 mouseMove 48058628 nil] evt: [324@500 273@512 mouseMove 48058628 nil] ofs: nil Receiver's instance variables: bounds: 447@539 corner: 463@555 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 447@539 corner: 463@555 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [447@539 mouseUp 48325024 nil] targetOffset: 72@4 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: true temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 48325024 447 539 0 0 1 1) lastKeyScanCode: 126 combinedChar: nil HandMorph>>processEvents Receiver: a HandMorph(843055104) Arguments and temporary variables: evt: [324@500 273@512 mouseMove 48058628 nil] evtBuf: #(1 48058628 290 508 0 0 0 1) type: 1 hadAny: false Receiver's instance variables: bounds: 447@539 corner: 463@555 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 447@539 corner: 463@555 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [447@539 mouseUp 48325024 nil] targetOffset: 72@4 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: true temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 48325024 447 539 0 0 1 1) lastKeyScanCode: 126 combinedChar: nil [:h | ActiveHand := h. h processEvents. ActiveHand := nil] in WorldState>>doOneCycleNowFor: Receiver: a WorldState Arguments and temporary variables: h: a HandMorph(843055104) Receiver's instance variables: hands: an Array(a HandMorph(843055104)) viewBox: 0@0 corner: 1397@877 canvas: a FormCanvas on: DisplayScreen(1397x877x32) damageRecorder: a DamageRecorder stepList: a Heap(StepMessage(#stepAt: -> a PreDebugWindow(851705856))(a PreDebu...etc... lastStepTime: 48325012 lastStepMessage: nil lastCycleTime: 48325032 alarms: a Heap() lastAlarmTime: 48325012 menuBuilder: a PragmaMenuBuilder Array(SequenceableCollection)>>do: Receiver: an Array(a HandMorph(843055104)) Arguments and temporary variables: aBlock: [:h | ActiveHand := h. h processEvents. ActiveHand := nil] index: 1 indexLimiT: 1 Receiver's instance variables: an Array(a HandMorph(843055104)) WorldState>>handsDo: Receiver: a WorldState Arguments and temporary variables: aBlock: [:h | ActiveHand := h. h processEvents. ActiveHand := nil] Receiver's instance variables: hands: an Array(a HandMorph(843055104)) viewBox: 0@0 corner: 1397@877 canvas: a FormCanvas on: DisplayScreen(1397x877x32) damageRecorder: a DamageRecorder stepList: a Heap(StepMessage(#stepAt: -> a PreDebugWindow(851705856))(a PreDebu...etc... lastStepTime: 48325012 lastStepMessage: nil lastCycleTime: 48325032 alarms: a Heap() lastAlarmTime: 48325012 menuBuilder: a PragmaMenuBuilder WorldState>>doOneCycleNowFor: Receiver: a WorldState Arguments and temporary variables: aWorld: a PasteUpMorph(425197568) [world] Receiver's instance variables: hands: an Array(a HandMorph(843055104)) viewBox: 0@0 corner: 1397@877 canvas: a FormCanvas on: DisplayScreen(1397x877x32) damageRecorder: a DamageRecorder stepList: a Heap(StepMessage(#stepAt: -> a PreDebugWindow(851705856))(a PreDebu...etc... lastStepTime: 48325012 lastStepMessage: nil lastCycleTime: 48325032 alarms: a Heap() lastAlarmTime: 48325012 menuBuilder: a PragmaMenuBuilder WorldState>>doOneCycleFor: Receiver: a WorldState Arguments and temporary variables: aWorld: a PasteUpMorph(425197568) [world] Receiver's instance variables: hands: an Array(a HandMorph(843055104)) viewBox: 0@0 corner: 1397@877 canvas: a FormCanvas on: DisplayScreen(1397x877x32) damageRecorder: a DamageRecorder stepList: a Heap(StepMessage(#stepAt: -> a PreDebugWindow(851705856))(a PreDebu...etc... lastStepTime: 48325012 lastStepMessage: nil lastCycleTime: 48325032 alarms: a Heap() lastAlarmTime: 48325012 menuBuilder: a PragmaMenuBuilder PasteUpMorph>>doOneCycle Receiver: a PasteUpMorph(425197568) [world] Arguments and temporary variables: Receiver's instance variables: bounds: 0@0 corner: 1397@877 owner: nil submorphs: an Array(a TaskbarMorph(984088576) a SystemWindow(17563648) a System...etc... fullBounds: nil color: (Color r: 0.97 g: 0.98 b: 1.0) extension: a MorphExtension (666632192) [eventHandler = an EventHandler] [othe...etc... borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0) backgroundMorph: nil worldState: a WorldState griddingOn: nil [[World doOneCycle. Processor yield. false] whileFalse. nil] in Project class>>spawnNewProcess Receiver: Project Arguments and temporary variables: Receiver's instance variables: superclass: Model methodDict: a MethodDictionary(#beep->(Project>>#beep "a CompiledMethod(6052904...etc... format: 132 instanceVariables: nil organization: ('*sound' beep) ('*ma object serialization' maTransientVariables ...etc... subclasses: nil name: #Project classPool: a Dictionary(#UIProcess->a Process in nil ) sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'System-Support' traitComposition: {} localSelectors: nil [self value. Processor terminateActive] in BlockClosure>>newProcess Receiver: [[World doOneCycle. Processor yield. false] whileFalse. nil] Arguments and temporary variables: Receiver's instance variables: outerContext: Project class>>spawnNewProcess startpc: 57 numArgs: 0 --- The full stack --- UndefinedObject(Object)>>doesNotUnderstand: #morph OMenuMorph(ECMenuMorph)>>handleMouseEnter: MouseMoveEvent(MouseEvent)>>sentTo: MouseMoveEvent>>sentTo: OMenuMorph(Morph)>>handleEvent: MouseOverHandler>>transform:from:andSendTo: [self transform: evt from: anEvent andSendTo: aLeftMorph] in MouseOverHandler>>inform:to:originatedFrom:ifNotFocusedDo: True>>ifTrue:ifFalse: MouseOverHandler>>inform:to:originatedFrom:ifNotFocusedDo: [:anEnteredMorph | self inform: asMouseEnterEvent to: anEnteredMorph originatedFrom: anEvent ifNotFocusedDo: []] in MouseOverHandler>>handleAsMouseEnter: Array(SequenceableCollection)>>reverseDo: MouseOverHandler>>handleAsMouseEnter: MouseOverHandler>>processMouseOver: HandMorph>>handleEvent: HandMorph>>processEvents [:h | ActiveHand := h. h processEvents. ActiveHand := nil] in WorldState>>doOneCycleNowFor: Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [[World doOneCycle. Processor yield. false] whileFalse. nil] in Project class>>spawnNewProcess [self value. Processor terminateActive] in BlockClosure>>newProcess -- Mariano http://marianopeck.wordpress.com
participants (1)
-
Mariano Martinez Peck