I just started Adium from within GDB with
set env DYLD_INSERT_LIBRARIES /usr/lib/libgmalloc.B.dylib
set and it crashes during launch.
2007-12-28 14:26:29.370 Adium[6448] *** hostReachabilityChangedCallback got flags: -r-----
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x74067fd8
0x03273b0a in adium_source_remove (tag=10) at Adium/Plugins/Purple Service/adiumPurpleEventloop.m:131
131 if (sourceInfo->timer_tag == tag) {
(gdb)
sourceInfo itself is not NULL here, but it also does not seem to point towards valid memory.
(gdb) print sourceInfo
$1 = (struct SourceInfo *) 0x74067fcc
(gdb) print *sourceInfo
Cannot access memory at address 0x74067fcc
Backtrace is
#0 0x03273b0a in adium_source_remove (tag=10) at Adium/Plugins/Purple Service/adiumPurpleEventloop.m:131
#1 0x06d13926 in purple_input_remove ()
#2 0x06d2a2f5 in purple_proxy_connect_data_disconnect ()
#3 0x06d2a444 in purple_proxy_connect_data_connected ()
#4 0x06d2a57a in socket_ready_cb ()
#5 0x0327434b in socketCallback (s=0x74069fa8, callbackType=kCFSocketWriteCallBack, address=0x0, data=0x0, infoVoid=0x74067fcc) at Adium/Plugins/Purple Service/adiumPurpleEventloop.m:345
#6 0x90842f8d in __CFSocketDoCallback ()
#7 0x90842cb4 in __CFSocketPerformV0 ()
#8 0x9082cfe2 in CFRunLoopRunSpecific ()
#9 0x9082ca56 in CFRunLoopRunInMode ()
#10 0x92df0878 in RunCurrentEventLoopInMode ()
#11 0x92deff82 in ReceiveNextEventCommon ()
#12 0x92defdd9 in BlockUntilNextEventMatchingListInMode ()
#13 0x93276485 in _DPSNextEvent ()
#14 0x93276076 in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] ()
#15 0x9326fdfb in -[NSApplication run] ()
#16 0x93263d4f in NSApplicationMain ()
#17 0x000037ee in main (argc=1, argv=0xbffff5c4) at Adium/Source/main.m:3
SVN Revision is 22048
sourceInfo is retrieved with that call
struct SourceInfo *sourceInfo = (struct SourceInfo*)
[[sourceInfoDict objectForKey:[NSNumber numberWithUnsignedInt:tag]] pointerValue];