[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: segfault and onCleanup()
From: |
Rik |
Subject: |
Re: segfault and onCleanup() |
Date: |
Thu, 08 Dec 2011 13:52:33 -0800 |
On 12/08/2011 12:37 PM, John W. Eaton wrote:
> On 8-Dec-2011, Ben Abbott wrote:
>
> | When the tests complete and I "quit" ...
> |
> | Program received signal EXC_BAD_ACCESS, Could not access memory.
> | Reason: KERN_INVALID_ADDRESS at address: 0x000000010cf9e118
> | 0x00000001001ee9d7 in std::_Rb_tree<std::string, std::pair<std::string
> const, graphics_toolkit>, std::_Select1st<std::pair<std::string const,
> graphics_toolkit> >, std::less<std::string>,
> std::allocator<std::pair<std::string const, graphics_toolkit> > >::_M_erase
> (this=0x100c37720, __x=<value temporarily unavailable, due to optimizations>)
> at graphics.h:2177
> | 2177 delete rep;
> | (gdb) bt
> | #0 0x00000001001ee9d7 in std::_Rb_tree<std::string, std::pair<std::string
> const, graphics_toolkit>, std::_Select1st<std::pair<std::string const,
> graphics_toolkit> >, std::less<std::string>,
> std::allocator<std::pair<std::string const, graphics_toolkit> > >::_M_erase
> (this=0x100c37720, __x=<value temporarily unavailable, due to optimizations>)
> at graphics.h:2177
> | #1 0x00007fff8526c7c8 in __cxa_finalize ()
> | #2 0x00007fff8526c652 in exit ()
> | #3 0x00000001003918ff in clean_up_and_exit (retval=<value temporarily
> unavailable, due to optimizations>) at toplev.cc:685
> | #4 0x0000000100392420 in main_loop () at toplev.cc:641
> | #5 0x0000000100324fdf in octave_main (argc=<value temporarily unavailable,
> due to optimizations>, argv=<value temporarily unavailable, due to
> optimizations>, embedded=0) at octave.cc:938
> | #6 0x0000000100000f44 in start ()
> | Current language: auto; currently c++
>
> OK, line 2177 in graphics.h is inside the destructor for the
> graphics_toolkit object, and that is being called by exit. I
> intended to explicitly close and delete toolkit objects before this
> point. Does the following patch work for you? If so, I think I will
> take some time to try to fix this bug report:
>
> https://savannah.gnu.org/bugs/?31583
>
> by making it possible for toolkits to be registered without being
> loaded.
>
> jwe
Okay, this final patch works for me and 'make check' passes cleanly. Can
you also push the changes for ov-oncleanup.h to the repository? I made
them by hand to get Octave to compile.
--Rik
- Re: segfault and onCleanup(), (continued)
- Re: segfault and onCleanup(), Ben Abbott, 2011/12/08
- Re: segfault and onCleanup(), John W. Eaton, 2011/12/08
- Re: segfault and onCleanup(), Rik, 2011/12/08
- Re: segfault and onCleanup(), John W. Eaton, 2011/12/08
- Re: segfault and onCleanup(), Rik, 2011/12/08
- Re: segfault and onCleanup(), Rik, 2011/12/08
- Re: segfault and onCleanup(), Ben Abbott, 2011/12/08
- Re: segfault and onCleanup(), John W. Eaton, 2011/12/08
- Re: segfault and onCleanup(), Ben Abbott, 2011/12/08
- Re: segfault and onCleanup(), John W. Eaton, 2011/12/08
- Re: segfault and onCleanup(),
Rik <=
- Re: segfault and onCleanup(), John W. Eaton, 2011/12/08
- Re: segfault and onCleanup(), Ben Abbott, 2011/12/08
- segfault cleaning up graphics objects, John W. Eaton, 2011/12/08
- Re: segfault cleaning up graphics objects, Tatsuro MATSUOKA, 2011/12/08
- segfault cleaning up graphics objects, John W. Eaton, 2011/12/09
- Re: segfault and onCleanup(), John W. Eaton, 2011/12/08