Thanks for the bug report, Alexis.

Part of the solution is to change the last line of NetNameResolver 
class>>addressForName:timeout: to

        ^ result ifNotNil: [ result asSocketAddress ]

But I don't like NameLookupFailure>>#defaultAction either.

Apart from the fact that this is an extremely silly interactive action, it 
should call super when aborting. Retry feels very old school and ancient, it 
won't make a difference.

Furthermore, the contract of NetNameResolver class>>addressForName:timeout: 
should better not include returning nil, signaling NameLookupFailure is enough, 
but that might break some older code.

Comments ?

Sven

On 13 Feb 2012, at 20:28, Alexis Parseghian wrote:

> Attempting to send a bug report with an unresolved smtp server address
> gives a "retry or abort" notification. Aborting gives this DNU.
> 
> 
> 13 February 2012 8:28:26 pm
> 
> VM: unix - i686 - linux-gnu - CoInterpreter
> VMMaker-oscog-EstebanLorenzano.139 uuid:
> 5aa53979-d7d8-4ca3-91fe-cfc3b4109c33 Jan 26 2012,
> StackToRegisterMappingCogit VMMaker-oscog-EstebanLorenzano.139 uuid:
> 5aa53979-d7d8-4ca3-91fe-cfc3b4109c33 Jan 26 2012,
> https://git.gitorious.org/cogvm/blessed.git Commit:
> e49a136ea9fe909dd5ba3cdeffac8f61cce27c9f Date: Thu Jan 26 17:38:06
> 2012 +0100 By: Camillo Bruni <[email protected]>
> Image: Pharo1.4a [Latest update: #14329]
> 
> UndefinedObject(Object)>>doesNotUnderstand: #asSocketAddress
>       Receiver: nil
>       Arguments and temporary variables:
>               aMessage:       asSocketAddress
>               exception:      MessageNotUnderstood: receiver of 
> "asSocketAddress" is nil
>               resumeValue:    nil
>       Receiver's instance variables:
> nil
> 
> NetNameResolver class>>addressForName:timeout:
>       Receiver: NetNameResolver
>       Arguments and temporary variables:
>               hostName:       'mail.free.fr'
>               secs:   20
>               deadline:       1507274
>               result:         #(nil)
>       Receiver's instance variables:
>               superclass:     Object
>               methodDict:     a MethodDictionary()
>               format:         2
>               instanceVariables:      nil
>               organization:   ('as yet unclassified')
> 
>               subclasses:     nil
>               name:   #NetNameResolver
>               classPool:      a Dictionary(#DefaultHostName->'' 
> #HaveNetwork->true
> #ResolverBusy->...etc...
>               sharedPools:    nil
>               environment:    a SystemDictionary(lots of globals)
>               category:       #'Network-Kernel'
>               traitComposition:       {}
>               localSelectors:         nil
> 
> SMTPClient class(ProtocolClient class)>>openOnHostNamed:port:
>       Receiver: SMTPClient
>       Arguments and temporary variables:
>               hostName:       'mail.free.fr'
>               portNumber:     25
>               serverIP:       nil
>       Receiver's instance variables:
>               superclass:     TelnetProtocolClient
>               methodDict:     a MethodDictionary(#data:->(SMTPClient>>#data: 
> "a
> CompiledMethod(10...etc...
>               format:         142
>               instanceVariables:      nil
>               organization:   ('public protocol' localHostName localHostName:
> mailFrom:to:text:...etc...
>               subclasses:     nil
>               name:   #SMTPClient
>               classPool:      nil
>               sharedPools:    nil
>               environment:    a SystemDictionary(lots of globals)
>               category:       #'Network-Protocols'
>               traitComposition:       nil
>               localSelectors:         nil
> 
> SMTPClient class(ProtocolClient class)>>openOnHostNamed:
>       Receiver: SMTPClient
>       Arguments and temporary variables:
>               hostName:       'mail.free.fr'
>               i:      0
>               s:      nil
>               p:      nil
>       Receiver's instance variables:
>               superclass:     TelnetProtocolClient
>               methodDict:     a MethodDictionary(#data:->(SMTPClient>>#data: 
> "a
> CompiledMethod(10...etc...
>               format:         142
>               instanceVariables:      nil
>               organization:   ('public protocol' localHostName localHostName:
> mailFrom:to:text:...etc...
>               subclasses:     nil
>               name:   #SMTPClient
>               classPool:      nil
>               sharedPools:    nil
>               environment:    a SystemDictionary(lots of globals)
>               category:       #'Network-Protocols'
>               traitComposition:       nil
>               localSelectors:         nil
> 
> SMTPClient class>>deliverMailFrom:to:text:usingServer:
>       Receiver: SMTPClient
>       Arguments and temporary variables:
>               fromAddress:    '[email protected]'
>               recipientList:  #('[email protected]')
>               messageText:    'To: [email protected]
> From: [email protected]
> ...etc...
>               aString:        'mail.free.fr'
>               smtpClient:     nil
>       Receiver's instance variables:
>               superclass:     TelnetProtocolClient
>               methodDict:     a MethodDictionary(#data:->(SMTPClient>>#data: 
> "a
> CompiledMethod(10...etc...
>               format:         142
>               instanceVariables:      nil
>               organization:   ('public protocol' localHostName localHostName:
> mailFrom:to:text:...etc...
>               subclasses:     nil
>               name:   #SMTPClient
>               classPool:      nil
>               sharedPools:    nil
>               environment:    a SystemDictionary(lots of globals)
>               category:       #'Network-Protocols'
>               traitComposition:       nil
>               localSelectors:         nil
> 
> MailComposition>>submit
>       Receiver: a MailComposition
>       Arguments and temporary variables:
>               message:        Text: At first, trying to load text into a 
> workspace (from its ...
>       Receiver's instance variables:
>               dependents:     a DependentsArray(a SystemWindow(305397760) a
> PluggableTextMorph(61...etc...
>               messageText:    a Text for 'From: [email protected]
> To: [email protected]...
>               textEditor:     a PluggableTextMorph(611057664)
>               morphicWindow:  a SystemWindow(305397760)
> 
> PluggableButtonMorph>>performAction
>       Receiver: a PluggableButtonMorph(865075200)
>       Arguments and temporary variables:
> 
>       Receiver's instance variables:
>               bounds:         ([email protected]) corner: ([email protected])
>               owner:  an AlignmentMorph(781713408)
>               submorphs:      an Array(an AlignmentMorph(636223488))
>               fullBounds:     (259@129) corner: (599@173)
>               color:  (Color r: 0.8190000000000001 g: 0.8170000000000001 b:
> 0.8170000000000001...etc...
>               extension:      a MorphExtension (891551744) [balloonText]  
> [other:
> (lastState -> f...etc...
>               borderWidth:    1
>               borderColor:    #simple
>               model:  a MailComposition
>               label:  'send message'
>               getStateSelector:       nil
>               actionSelector:         #submit
>               getLabelSelector:       nil
>               getMenuSelector:        nil
>               shortcutCharacter:      nil
>               askBeforeChanging:      false
>               triggerOnMouseDown:     false
>               offColor:       Color white
>               onColor:        Color white
>               feedbackColor:  nil
>               showSelectionFeedback:  false
>               allButtons:     nil
>               arguments:      #()
>               argumentsProvider:      nil
>               argumentsSelector:      nil
>               gradientLook:   true
>               enabled:        true
>               actionBlock:    nil
>               getColorSelector:       nil
>               getEnabledSelector:     nil
> 
> [:m | (m containsPoint: evt cursorPoint)
>               ifTrue: [m enabled
>                               ifTrue: [m performAction]]] in 
> PluggableButtonMorph>>mouseUp:
>       Receiver: a PluggableButtonMorph(865075200)
>       Arguments and temporary variables:
>               evt:    a PluggableButtonMorph(865075200)
>               m:      [(454@154) mouseUp 1472972 nil]
>       Receiver's instance variables:
>               bounds:         ([email protected]) corner: ([email protected])
>               owner:  an AlignmentMorph(781713408)
>               submorphs:      an Array(an AlignmentMorph(636223488))
>               fullBounds:     (259@129) corner: (599@173)
>               color:  (Color r: 0.8190000000000001 g: 0.8170000000000001 b:
> 0.8170000000000001...etc...
>               extension:      a MorphExtension (891551744) [balloonText]  
> [other:
> (lastState -> f...etc...
>               borderWidth:    1
>               borderColor:    #simple
>               model:  a MailComposition
>               label:  'send message'
>               getStateSelector:       nil
>               actionSelector:         #submit
>               getLabelSelector:       nil
>               getMenuSelector:        nil
>               shortcutCharacter:      nil
>               askBeforeChanging:      false
>               triggerOnMouseDown:     false
>               offColor:       Color white
>               onColor:        Color white
>               feedbackColor:  nil
>               showSelectionFeedback:  false
>               allButtons:     nil
>               arguments:      #()
>               argumentsProvider:      nil
>               argumentsSelector:      nil
>               gradientLook:   true
>               enabled:        true
>               actionBlock:    nil
>               getColorSelector:       nil
>               getEnabledSelector:     nil
> 
> Array(SequenceableCollection)>>do:
>       Receiver: an Array(a PluggableButtonMorph(865075200) a
> PluggableButtonMorph(919076864))
>       Arguments and temporary variables:
>               aBlock:         [:m | (m containsPoint: evt cursorPoint)
>               ifTrue: [m enabled
>                               ifTru...etc...
>               index:  1
>               indexLimiT:     2
>       Receiver's instance variables:
> an Array(a PluggableButtonMorph(865075200) a PluggableButtonMorph(919076864))
> 
> PluggableButtonMorph>>mouseUp:
>       Receiver: a PluggableButtonMorph(865075200)
>       Arguments and temporary variables:
>               evt:    [(454@154) mouseUp 1472972 nil]
>               all:    an Array(a PluggableButtonMorph(865075200) a
> PluggableButtonMorph(91907686...etc...
>       Receiver's instance variables:
>               bounds:         ([email protected]) corner: ([email protected])
>               owner:  an AlignmentMorph(781713408)
>               submorphs:      an Array(an AlignmentMorph(636223488))
>               fullBounds:     (259@129) corner: (599@173)
>               color:  (Color r: 0.8190000000000001 g: 0.8170000000000001 b:
> 0.8170000000000001...etc...
>               extension:      a MorphExtension (891551744) [balloonText]  
> [other:
> (lastState -> f...etc...
>               borderWidth:    1
>               borderColor:    #simple
>               model:  a MailComposition
>               label:  'send message'
>               getStateSelector:       nil
>               actionSelector:         #submit
>               getLabelSelector:       nil
>               getMenuSelector:        nil
>               shortcutCharacter:      nil
>               askBeforeChanging:      false
>               triggerOnMouseDown:     false
>               offColor:       Color white
>               onColor:        Color white
>               feedbackColor:  nil
>               showSelectionFeedback:  false
>               allButtons:     nil
>               arguments:      #()
>               argumentsProvider:      nil
>               argumentsSelector:      nil
>               gradientLook:   true
>               enabled:        true
>               actionBlock:    nil
>               getColorSelector:       nil
>               getEnabledSelector:     nil
> 
> PluggableButtonMorph(Morph)>>handleMouseUp:
>       Receiver: a PluggableButtonMorph(865075200)
>       Arguments and temporary variables:
>               anEvent:        [(454@154) mouseUp 1472972 nil]
>       Receiver's instance variables:
>               bounds:         ([email protected]) corner: ([email protected])
>               owner:  an AlignmentMorph(781713408)
>               submorphs:      an Array(an AlignmentMorph(636223488))
>               fullBounds:     (259@129) corner: (599@173)
>               color:  (Color r: 0.8190000000000001 g: 0.8170000000000001 b:
> 0.8170000000000001...etc...
>               extension:      a MorphExtension (891551744) [balloonText]  
> [other:
> (lastState -> f...etc...
>               borderWidth:    1
>               borderColor:    #simple
>               model:  a MailComposition
>               label:  'send message'
>               getStateSelector:       nil
>               actionSelector:         #submit
>               getLabelSelector:       nil
>               getMenuSelector:        nil
>               shortcutCharacter:      nil
>               askBeforeChanging:      false
>               triggerOnMouseDown:     false
>               offColor:       Color white
>               onColor:        Color white
>               feedbackColor:  nil
>               showSelectionFeedback:  false
>               allButtons:     nil
>               arguments:      #()
>               argumentsProvider:      nil
>               argumentsSelector:      nil
>               gradientLook:   true
>               enabled:        true
>               actionBlock:    nil
>               getColorSelector:       nil
>               getEnabledSelector:     nil
> 
> MouseButtonEvent>>sentTo:
>       Receiver: [(454@154) mouseUp 1472972 nil]
>       Arguments and temporary variables:
>               anObject:       a PluggableButtonMorph(865075200)
>       Receiver's instance variables:
>               timeStamp:      1472972
>               source:         a HandMorph(843055104)
>               windowIndex:    nil
>               type:   #mouseUp
>               buttons:        0
>               position:       (454@154)
>               handler:        nil
>               wasHandled:     true
>               whichButton:    4
> 
> PluggableButtonMorph(Morph)>>handleEvent:
>       Receiver: a PluggableButtonMorph(865075200)
>       Arguments and temporary variables:
>               anEvent:        [(454@154) mouseUp 1472972 nil]
>       Receiver's instance variables:
>               bounds:         ([email protected]) corner: ([email protected])
>               owner:  an AlignmentMorph(781713408)
>               submorphs:      an Array(an AlignmentMorph(636223488))
>               fullBounds:     (259@129) corner: (599@173)
>               color:  (Color r: 0.8190000000000001 g: 0.8170000000000001 b:
> 0.8170000000000001...etc...
>               extension:      a MorphExtension (891551744) [balloonText]  
> [other:
> (lastState -> f...etc...
>               borderWidth:    1
>               borderColor:    #simple
>               model:  a MailComposition
>               label:  'send message'
>               getStateSelector:       nil
>               actionSelector:         #submit
>               getLabelSelector:       nil
>               getMenuSelector:        nil
>               shortcutCharacter:      nil
>               askBeforeChanging:      false
>               triggerOnMouseDown:     false
>               offColor:       Color white
>               onColor:        Color white
>               feedbackColor:  nil
>               showSelectionFeedback:  false
>               allButtons:     nil
>               arguments:      #()
>               argumentsProvider:      nil
>               argumentsSelector:      nil
>               gradientLook:   true
>               enabled:        true
>               actionBlock:    nil
>               getColorSelector:       nil
>               getEnabledSelector:     nil
> 
> PluggableButtonMorph(Morph)>>handleFocusEvent:
>       Receiver: a PluggableButtonMorph(865075200)
>       Arguments and temporary variables:
>               anEvent:        [(454@154) mouseUp 1472972 nil]
>       Receiver's instance variables:
>               bounds:         ([email protected]) corner: ([email protected])
>               owner:  an AlignmentMorph(781713408)
>               submorphs:      an Array(an AlignmentMorph(636223488))
>               fullBounds:     (259@129) corner: (599@173)
>               color:  (Color r: 0.8190000000000001 g: 0.8170000000000001 b:
> 0.8170000000000001...etc...
>               extension:      a MorphExtension (891551744) [balloonText]  
> [other:
> (lastState -> f...etc...
>               borderWidth:    1
>               borderColor:    #simple
>               model:  a MailComposition
>               label:  'send message'
>               getStateSelector:       nil
>               actionSelector:         #submit
>               getLabelSelector:       nil
>               getMenuSelector:        nil
>               shortcutCharacter:      nil
>               askBeforeChanging:      false
>               triggerOnMouseDown:     false
>               offColor:       Color white
>               onColor:        Color white
>               feedbackColor:  nil
>               showSelectionFeedback:  false
>               allButtons:     nil
>               arguments:      #()
>               argumentsProvider:      nil
>               argumentsSelector:      nil
>               gradientLook:   true
>               enabled:        true
>               actionBlock:    nil
>               getColorSelector:       nil
>               getEnabledSelector:     nil
> 
> [ActiveHand := self.
>       ActiveEvent := anEvent.
>       result := focusHolder
>                               handleFocusEvent: (anEvent
>                                               transformedBy: (focusHolder 
> transformedFrom: self))] in
> HandMorph>>sendFocusEvent:to:clear:
>       Receiver: a HandMorph(843055104)
>       Arguments and temporary variables:
>               anEvent:        [(454@154) mouseUp 1472972 nil]
>               focusHolder:    a PluggableButtonMorph(865075200)
>               result:         #(nil)
>       Receiver's instance variables:
>               bounds:         (990@481) corner: (1006@497)
>               owner:  a PasteUpMorph(425197568) [world]
>               submorphs:      #()
>               fullBounds:     (990@481) corner: (1006@497)
>               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:         [(990@481) mouseUp 3504860 nil]
>               targetOffset:   ([email protected])
>               damageRecorder:         a DamageRecorder
>               cacheCanvas:    nil
>               cachedCanvasHasHoles:   true
>               temporaryCursor:        nil
>               temporaryCursorOffset:  nil
>               hardwareCursor:         nil
>               hasChanged:     true
>               savedPatch:     nil
>               lastEventBuffer:        #(1 3504860 990 481 0 0 0 1)
>               lastKeyScanCode:        99
>               combinedChar:   nil
>               eventSource:    nil
>               lastSystemEvent:        nil
>               captureBlock:   nil
>               recentModifiers:        0
> 
> [aBlock value] in PasteUpMorph>>becomeActiveDuring:
>       Receiver: a PasteUpMorph(425197568) [world]
>       Arguments and temporary variables:
>               aBlock:         [ActiveHand := self.
>       ActiveEvent := anEvent.
>       result := focusHolder
>               ...etc...
>       Receiver's instance variables:
>               bounds:         (0@0) corner: (1392@849)
>               owner:  nil
>               submorphs:      an Array(a TaskbarMorph(984088576) a
> SystemWindow(330563584) a Syste...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
> 
> BlockClosure>>on:do:
>       Receiver: [aBlock value]
>       Arguments and temporary variables:
>               exception:      Error
>               handlerAction:  [:ex |
> ActiveWorld := priorWorld.
>       ActiveEvent := priorEvent.
>       ...etc...
>               handlerActive:  false
>       Receiver's instance variables:
>               outerContext:   PasteUpMorph>>becomeActiveDuring:
>               startpc:        67
>               numArgs:        0
> 
> PasteUpMorph>>becomeActiveDuring:
>       Receiver: a PasteUpMorph(425197568) [world]
>       Arguments and temporary variables:
>               aBlock:         [ActiveHand := self.
>       ActiveEvent := anEvent.
>       result := focusHolder
>               ...etc...
>               priorWorld:     a PasteUpMorph(425197568) [world]
>               priorHand:      a HandMorph(843055104)
>               priorEvent:     [(454@154) mouseOver red nil nil]
>       Receiver's instance variables:
>               bounds:         (0@0) corner: (1392@849)
>               owner:  nil
>               submorphs:      an Array(a TaskbarMorph(984088576) a
> SystemWindow(330563584) a Syste...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
> 
> HandMorph>>sendFocusEvent:to:clear:
>       Receiver: a HandMorph(843055104)
>       Arguments and temporary variables:
>               anEvent:        [(454@154) mouseUp 1472972 nil]
>               focusHolder:    a PluggableButtonMorph(865075200)
>               aBlock:         [self mouseFocus: nil]
>               w:      a PasteUpMorph(425197568) [world]
>               result:         #(nil)
>       Receiver's instance variables:
>               bounds:         (990@481) corner: (1006@497)
>               owner:  a PasteUpMorph(425197568) [world]
>               submorphs:      #()
>               fullBounds:     (990@481) corner: (1006@497)
>               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:         [(990@481) mouseUp 3504860 nil]
>               targetOffset:   ([email protected])
>               damageRecorder:         a DamageRecorder
>               cacheCanvas:    nil
>               cachedCanvasHasHoles:   true
>               temporaryCursor:        nil
>               temporaryCursorOffset:  nil
>               hardwareCursor:         nil
>               hasChanged:     true
>               savedPatch:     nil
>               lastEventBuffer:        #(1 3504860 990 481 0 0 0 1)
>               lastKeyScanCode:        99
>               combinedChar:   nil
>               eventSource:    nil
>               lastSystemEvent:        nil
>               captureBlock:   nil
>               recentModifiers:        0
> 
> HandMorph>>sendEvent:focus:clear:
>       Receiver: a HandMorph(843055104)
>       Arguments and temporary variables:
>               anEvent:        [(454@154) mouseUp 1472972 nil]
>               focusHolder:    a PluggableButtonMorph(865075200)
>               aBlock:         [self mouseFocus: nil]
>               result:         nil
>       Receiver's instance variables:
>               bounds:         (990@481) corner: (1006@497)
>               owner:  a PasteUpMorph(425197568) [world]
>               submorphs:      #()
>               fullBounds:     (990@481) corner: (1006@497)
>               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:         [(990@481) mouseUp 3504860 nil]
>               targetOffset:   ([email protected])
>               damageRecorder:         a DamageRecorder
>               cacheCanvas:    nil
>               cachedCanvasHasHoles:   true
>               temporaryCursor:        nil
>               temporaryCursorOffset:  nil
>               hardwareCursor:         nil
>               hasChanged:     true
>               savedPatch:     nil
>               lastEventBuffer:        #(1 3504860 990 481 0 0 0 1)
>               lastKeyScanCode:        99
>               combinedChar:   nil
>               eventSource:    nil
>               lastSystemEvent:        nil
>               captureBlock:   nil
>               recentModifiers:        0
> 
> HandMorph>>sendMouseEvent:
>       Receiver: a HandMorph(843055104)
>       Arguments and temporary variables:
>               anEvent:        [(454@154) mouseUp 1472972 nil]
>       Receiver's instance variables:
>               bounds:         (990@481) corner: (1006@497)
>               owner:  a PasteUpMorph(425197568) [world]
>               submorphs:      #()
>               fullBounds:     (990@481) corner: (1006@497)
>               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:         [(990@481) mouseUp 3504860 nil]
>               targetOffset:   ([email protected])
>               damageRecorder:         a DamageRecorder
>               cacheCanvas:    nil
>               cachedCanvasHasHoles:   true
>               temporaryCursor:        nil
>               temporaryCursorOffset:  nil
>               hardwareCursor:         nil
>               hasChanged:     true
>               savedPatch:     nil
>               lastEventBuffer:        #(1 3504860 990 481 0 0 0 1)
>               lastKeyScanCode:        99
>               combinedChar:   nil
>               eventSource:    nil
>               lastSystemEvent:        nil
>               captureBlock:   nil
>               recentModifiers:        0
> 
> HandMorph>>handleEvent:
>       Receiver: a HandMorph(843055104)
>       Arguments and temporary variables:
>               anEvent:        [(454@154) mouseUp 1472972 nil]
>               evt:    [(454@154) mouseUp 1472972 nil]
>               ofs:    nil
>       Receiver's instance variables:
>               bounds:         (990@481) corner: (1006@497)
>               owner:  a PasteUpMorph(425197568) [world]
>               submorphs:      #()
>               fullBounds:     (990@481) corner: (1006@497)
>               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:         [(990@481) mouseUp 3504860 nil]
>               targetOffset:   ([email protected])
>               damageRecorder:         a DamageRecorder
>               cacheCanvas:    nil
>               cachedCanvasHasHoles:   true
>               temporaryCursor:        nil
>               temporaryCursorOffset:  nil
>               hardwareCursor:         nil
>               hasChanged:     true
>               savedPatch:     nil
>               lastEventBuffer:        #(1 3504860 990 481 0 0 0 1)
>               lastKeyScanCode:        99
>               combinedChar:   nil
>               eventSource:    nil
>               lastSystemEvent:        nil
>               captureBlock:   nil
>               recentModifiers:        0
> 
> HandMorph>>processEvents
>       Receiver: a HandMorph(843055104)
>       Arguments and temporary variables:
>               evt:    [(454@154) mouseUp 1472972 nil]
>               evtBuf:         #(1 1472972 454 154 0 0 0 1)
>               type:   1
>               hadAny:         false
>       Receiver's instance variables:
>               bounds:         (990@481) corner: (1006@497)
>               owner:  a PasteUpMorph(425197568) [world]
>               submorphs:      #()
>               fullBounds:     (990@481) corner: (1006@497)
>               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:         [(990@481) mouseUp 3504860 nil]
>               targetOffset:   ([email protected])
>               damageRecorder:         a DamageRecorder
>               cacheCanvas:    nil
>               cachedCanvasHasHoles:   true
>               temporaryCursor:        nil
>               temporaryCursorOffset:  nil
>               hardwareCursor:         nil
>               hasChanged:     true
>               savedPatch:     nil
>               lastEventBuffer:        #(1 3504860 990 481 0 0 0 1)
>               lastKeyScanCode:        99
>               combinedChar:   nil
>               eventSource:    nil
>               lastSystemEvent:        nil
>               captureBlock:   nil
>               recentModifiers:        0
> 
> [: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: (1392@849)
>               canvas:         a FormCanvas on: DisplayScreen(1392x849x32)
>               damageRecorder:         a DamageRecorder
>               stepList:       a Heap(StepMessage(#stepAt: -> an
> OverflowRowMorph(310378496))(an Ove...etc...
>               lastStepTime:   3504876
>               lastStepMessage:        nil
>               lastCycleTime:  3504898
>               alarms:         a Heap()
>               lastAlarmTime:  3504876
>               menuBuilder:    a PragmaMenuBuilder ( nil )
> 
> 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: (1392@849)
>               canvas:         a FormCanvas on: DisplayScreen(1392x849x32)
>               damageRecorder:         a DamageRecorder
>               stepList:       a Heap(StepMessage(#stepAt: -> an
> OverflowRowMorph(310378496))(an Ove...etc...
>               lastStepTime:   3504876
>               lastStepMessage:        nil
>               lastCycleTime:  3504898
>               alarms:         a Heap()
>               lastAlarmTime:  3504876
>               menuBuilder:    a PragmaMenuBuilder ( nil )
> 
> 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: (1392@849)
>               canvas:         a FormCanvas on: DisplayScreen(1392x849x32)
>               damageRecorder:         a DamageRecorder
>               stepList:       a Heap(StepMessage(#stepAt: -> an
> OverflowRowMorph(310378496))(an Ove...etc...
>               lastStepTime:   3504876
>               lastStepMessage:        nil
>               lastCycleTime:  3504898
>               alarms:         a Heap()
>               lastAlarmTime:  3504876
>               menuBuilder:    a PragmaMenuBuilder ( nil )
> 
> 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: (1392@849)
>               canvas:         a FormCanvas on: DisplayScreen(1392x849x32)
>               damageRecorder:         a DamageRecorder
>               stepList:       a Heap(StepMessage(#stepAt: -> an
> OverflowRowMorph(310378496))(an Ove...etc...
>               lastStepTime:   3504876
>               lastStepMessage:        nil
>               lastCycleTime:  3504898
>               alarms:         a Heap()
>               lastAlarmTime:  3504876
>               menuBuilder:    a PragmaMenuBuilder ( nil )
> 
> PasteUpMorph>>doOneCycle
>       Receiver: a PasteUpMorph(425197568) [world]
>       Arguments and temporary variables:
> 
>       Receiver's instance variables:
>               bounds:         (0@0) corner: (1392@849)
>               owner:  nil
>               submorphs:      an Array(a TaskbarMorph(984088576) a
> SystemWindow(330563584) a Syste...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 MorphicUIManager>>spawnNewProcess
>       Receiver: a MorphicUIManager
>       Arguments and temporary variables:
> 
>       Receiver's instance variables:
>               interactiveParser:      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:   MorphicUIManager>>spawnNewProcess
>               startpc:        57
>               numArgs:        0
> 
> 
> --- The full stack ---
> UndefinedObject(Object)>>doesNotUnderstand: #asSocketAddress
> NetNameResolver class>>addressForName:timeout:
> SMTPClient class(ProtocolClient class)>>openOnHostNamed:port:
> SMTPClient class(ProtocolClient class)>>openOnHostNamed:
> SMTPClient class>>deliverMailFrom:to:text:usingServer:
> MailComposition>>submit
> PluggableButtonMorph>>performAction
> [:m | (m containsPoint: evt cursorPoint)
>               ifTrue: [m enabled
>                               ifTrue: [m performAction]]] in 
> PluggableButtonMorph>>mouseUp:
> Array(SequenceableCollection)>>do:
> PluggableButtonMorph>>mouseUp:
> PluggableButtonMorph(Morph)>>handleMouseUp:
> MouseButtonEvent>>sentTo:
> PluggableButtonMorph(Morph)>>handleEvent:
> PluggableButtonMorph(Morph)>>handleFocusEvent:
> [ActiveHand := self.
>       ActiveEvent := anEvent.
>       result := focusHolder
>                               handleFocusEvent: (anEvent
>                                               transformedBy: (focusHolder 
> transformedFrom: self))] in
> HandMorph>>sendFocusEvent:to:clear:
> [aBlock value] in PasteUpMorph>>becomeActiveDuring:
> BlockClosure>>on:do:
> PasteUpMorph>>becomeActiveDuring:
> HandMorph>>sendFocusEvent:to:clear:
> HandMorph>>sendEvent:focus:clear:
> HandMorph>>sendMouseEvent:
> 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 MorphicUIManager>>spawnNewProcess
> [self value.
>       Processor terminateActive] in BlockClosure>>newProcess
> 


Reply via email to