Line 92 of globals.cxx seems ok. subsystem_mgr was allocated with a new operator in line 45. Could you put a breakpoint at line 92 to see if on your system, the destructor is not called twice ?
-Fred Jonathan Polley wrote: > Since there is a new release coming, I decided to bring the Mac version > back up to date (I've been busy otherwise). When I exit FlightGear, I > get the following errors (and crash). > > > *** malloc[8626]: Deallocation of a pointer not malloced: 0x18bef000; > This could be a double free(), or free() called with the middle of an > allocated block; Try setting environment variable MallocHelp to see > tools to help debug > *** malloc[8626]: Deallocation of a pointer not malloced: 0x18d8d000; > This could be a double free(), or free() called with the middle of an > allocated block; Try setting environment variable MallocHelp to see > tools to help debug > *** malloc[8626]: Deallocation of a pointer not malloced: 0x141794c0; > This could be a double free(), or free() called with the middle of an > allocated block; Try setting environment variable MallocHelp to see > tools to help debug > > Using gdb gives me the following stack dump. Any ideas? > > Program received signal EXC_BAD_ACCESS, Could not access memory. > 0x0002bec8 in FGGlobals::~FGGlobals() (this=0x6b3e830, __in_chrg=3) at > globals.cxx:92 > 92 delete subsystem_mgr; > (gdb) backtrace > #0 0x0002bec8 in FGGlobals::~FGGlobals() (this=0x6b3e830, __in_chrg=3) > at globals.cxx:92 > #1 0x0000f178 in fgExitCleanup() () at main.cxx:1497 > #2 0x9002c7b8 in exit () > #3 0x00011224 in fgOSExit(int) (code=112624448) at fg_os.cxx:148 > #4 0x9002c7b8 in exit () > #5 0x0003d284 in fgExit(int) (status=0) at util.cxx:110 > #6 0x00026c20 in do_exit(SGPropertyNode const*) (arg=0x55d070) at > fg_commands.cxx:193 > #7 0x00235178 in FGBinding::fire() const (this=0x2) at input.cxx:122 > #8 0x00220de4 in action_callback(puObject*) (object=0x6b68340) at > /usr/include/gcc/darwin/3.3/c++/bits/stl_vector.h:511 > #9 0x00382d7c in puOneShot::doHit(int, int, int, int) (this=0x0, > button=0, updown=1000, x=2013490264, y=0) at puOneShot.cxx:32 > #10 0x0037d370 in puObject::checkHit(int, int, int, int) > (this=0x19969a10, button=0, updown=1, x=429300720, y=2) at > puObject.cxx:508 > #11 0x0037a46c in puGroup::checkHit(int, int, int, int) > (this=0x199697f0, button=0, updown=1, x=102, y=23) at puGroup.cxx:218 > #12 0x0037a46c in puGroup::checkHit(int, int, int, int) > (this=0x199683c0, button=0, updown=1, x=102, y=23) at puGroup.cxx:218 > #13 0x0035c8a8 in puMouse(int, int, int, int) (button=0, updown=1, > x=364, y=316) at pu.cxx:365 > #14 0x00235ed4 in FGInput::doMouseClick(int, int, int, int) > (this=0x18b85000, b=0, updown=1, x=364, y=316) at input.cxx:282 > #15 0x875270e8 in -[GLUTView _commonMouseUp:] () > #16 0x92e02cfc in -[NSWindow sendEvent:] () > #17 0x87542600 in -[GLUTWindow sendEvent:] () > #18 0x92df5324 in -[NSApplication sendEvent:] () > #19 0x87521cc4 in -[GLUTApplication > _runMainLoopUntilDate:autoreleasePool:] () > #20 0x87521df4 in -[GLUTApplication run] () > #21 0x8753bd28 in glutMainLoop () > #22 0x00010b54 in fgMainInit(int, char**) (argc=1, argv=0x4ff198) at > main.cxx:1779 > #23 0x0000a8fc in main (argc=1, argv=0x8756216c) at bootstrap.cxx:175 > > > Thanks, > > Jonathan Polley > > > _______________________________________________ > Flightgear-devel mailing list > [EMAIL PROTECTED] > http://mail.flightgear.org/mailman/listinfo/flightgear-devel _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel
