OSX VM Error while running a new BadgeMorph

John M McIntosh johnmci at smalltalkconsulting.com
Fri Nov 15 04:19:20 UTC 2002


Well I direct the reply back to the list

Mmm do they get credit for post to the list & cc me hoping for a fix?
Mmm even if all the source/compilers/tools etc are freely available to  
fix it?
Mmm even with a nice gui front end to gnu debugger?
Mmmm then again I've suggested in the past that people should tell me  
if the mac vm crashes (shouldn't do that).

Lets see it does a EXC_BAD_ACCESS

(gdb) bt
#0  0x000c56a4 in ResolverStart () at  
/Volumes/Lamie/Squeak/SqueakAtSourceForge/squeak/platforms/Mac  
OS/plugins/SocketPlugin/sqMacNetwork.c:547/Users/johnmci/Documents/ 
SqueakCroquet/
#1  0x000c5ac4 in sqResolverStartNameLookup (hostName=0x3570ca0  
"triton.cc.gatech.edu\032\314\270\a\002\265\016\275\032\016\001\025\003W 
\026\334", nameSize=20) at  
/Volumes/Lamie/Squeak/SqueakAtSourceForge/squeak/platforms/Mac  
OS/plugins/SocketPlugin/sqMacNetwork.c:655/Users/johnmci/Documents/ 
SqueakCroquet/
#2  0x000a03dc in primitiveResolverStartNameLookup () at  
src/vm/intplugins/SocketPlugin/SocketPlugin.c:311/Users/johnmci/ 
Documents/SqueakCroquet/
#3  0x0001e588 in primitiveExternalCall () at  
src/vm/interp.c:13258/Users/johnmci/Documents/SqueakCroquet/
#4  0x00029084 in primitiveResponse () at  
src/vm/interp.c:17205/Users/johnmci/Documents/SqueakCroquet/
#5  0x000109f4 in interpret () at  
src/vm/interp.c:7502/Users/johnmci/Documents/SqueakCroquet/
#6  0x7093193c in _pthread_body (self=0x1710590) at  
/SourceCache/Libc/Libc-262/pthreads/pthread.c:586/private/var/tmp/ 
Libc_debug/Libc_debug-262.obj~1/obj.ppc/
(gdb)

The nasty line is this
	if (gDNSResolver->erf == NULL) //Sleep fix, other endpoints are more  
explicit about this issue.


(gdb) print gDNSResolver
$1 = (EPInfo *) 0x0

Oops

Lets see what's the stack
call printAllStacks()

56041164 [] in NetNameResolver class>addressForName:timeout:
56041348 [] in Semaphore>critical:ifError:
56040888 BlockContext>on:do:
56039908 BlockContext>ifError:
56039816 Semaphore>critical:ifError:
56039572 NetNameResolver class>addressForName:timeout:
56040224 [] in HTTPSocket class>httpGetDocument:args:accept:request:
56039480 HTTPSocket class>retry:asking:ifGiveUp:
56017532 HTTPSocket class>httpGetDocument:args:accept:request:
56034116 HTTPSocket class>httpGetDocument:args:accept:
56034024 HTTPSocket class>httpGet:args:accept:
56031516 [] in BadgeMorphConnector>login
56031232 BlockContext>on:do:
56031140 BlockContext>ifError:
56019348 BadgeMorphConnector>login
56019256 PluggableButtonMorph>performAction
56019532 [] in PluggableButtonMorph>mouseUp:
56019124 SequenceableCollection>do:
56019032 PluggableButtonMorph>mouseUp:
56018848 Morph>handleMouseUp:
56018756 MouseButtonEvent>sentTo:
56018664 Morph>handleEvent:
56018572 Morph>handleFocusEvent:
56018940 [] in HandMorph>sendFocusEvent:to:clear:
56018480 PasteUpMorph>becomeActiveDuring:
56018204 HandMorph>sendFocusEvent:to:clear:
56018112 HandMorph>sendEvent:focus:clear:
56018020 HandMorph>sendMouseEvent:
56017836 HandMorph>handleEvent:
56016704 HandMorph>processEvents
56016520 [] in WorldState>doOneCycleNowFor:
56016612 SequenceableCollection>do:
56016428 WorldState>handsDo:
56016336 WorldState>doOneCycleNowFor:
56012164 WorldState>doOneCycleFor:
56012072 PasteUpMorph>doOneCycle
53722148 [] in Project class>spawnNew$2 = 45405388

Process
53722332 [] in BlockContext>newProcess

Process
44806908 Delay class>doesNotUnderstand:
44807244 [] in Delay class>doesNotUnderstand:
44807320 [] in BlockContext>doesNotUnderstand:

Process
47583660 WeakArray class>doesNotUnderstand:
47583356 [] in UndefinedObject>doesNotUnderstand:
47583540 [] in BlockContext>doesNotUnderstand:

Process
56015564 Semaphore>waitTimeoutMSecs:
55431520 EventSensor>ioProcess
55431716 [] in EventSensor>startUp
55431808 [] in BlockContext>newProcess

Process
55432148 InputSensor>userInterruptWatcher
55432260 [] in InputSensor>installInterruptWatcher
55432352 [] in BlockContext>newProcess

Process
55432748 SystemDictionary>lowSpaceWatcher
55432840 [] in SystemDictionary>installLowSpaceWatcher
55432932 [] in BlockContext>newProcess


Mmm well it is a bug, I don't check to see the global resolver has a  
valid value. That's fall out of assuming it gets initialized, but  
initialization of the network stuff isn't automatic because in days of  
dialup we didn't want the modem to dial if you loaded the network code.

I'll let Keith figure out what extra step he needs to do to avoid the  
problem.


On Wednesday, November 13, 2002, at 02:57  PM, Keith wrote:

> We have been working on making BadgeMorphs easier and a little more  
> useful
> all semester and we have run into quite a large problem.  The VM for  
> the Mac
> OSX throws an application error and shuts squeak done with no  
> debugging log
> once the BadgeMorph tries to log on to the server.  The code works  
> correctly
> under linux, sun, and windows, so it has been quite frustrating.  It  
> is also
> baffling because the logon method simply starts a background process,  
> opens
> up a webpage, parses data from the webpage, and sets the  
> EToyListenerMorph
> to listen.
>
> To recreate the problem file in the change set from
> http://coweb.cc.gatech.edu/squeakers/35.  BadgeMorphConnector  
> openAsMorph
> will start the application and then press the logon button.  That is  
> it and
> then squeak crashes.
>
> Feel free to test/use our program and post bugs/suggestions to the  
> coweb.
> Additional information about the project and some information (slightly
> outdated) about the server can be found at
> http://coweb.cc.gatech.edu/squeakers/27.
>
> Thanks,
> Keith
>
> --
> keith mcdermott, cs2335 ta
> gte047w at cc.gatech.edu
>
>
>
>
--
======================================================================== 
===
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
======================================================================== 
===




More information about the Squeak-dev mailing list