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