octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #61994] Crash on GUI exiting with octave_base_


From: John Donoghue
Subject: [Octave-bug-tracker] [bug #61994] Crash on GUI exiting with octave_base_value objects still open.
Date: Tue, 15 Feb 2022 10:00:16 -0500 (EST)

Follow-up Comment #19, bug #61994 (project octave):

AFter 6 or 7 attempts with debugger on:


Thread 1 "octave-gui" received signal SIGSEGV, Segmentation fault.
0x00007f4af7367c62 in octave_value::~octave_value (this=0x7f4aa09a4730,
__in_chrg=<optimized out>) at ../libinterp/octave-value/ov.h:387
387           delete m_rep;

gdb) where
#0  0x00007f4af7367c62 in octave_value::~octave_value (this=0x7f4aa09a4730,
__in_chrg=<optimized out>)
    at ../libinterp/octave-value/ov.h:387
#1  octave_value::~octave_value (this=0x7f4aa09a4730, __in_chrg=<optimized
out>) at ../libinterp/octave-value/ov.h:380
#2  __gnu_cxx::new_allocator<octave_value>::destroy<octave_value>
(__p=0x7f4aa09a4730, this=<optimized out>)
    at /usr/include/c++/11/ext/new_allocator.h:168
#3  std::allocator_traits<std::allocator<octave_value>
>::destroy<octave_value> (__p=0x7f4aa09a4730, __a=...)
    at /usr/include/c++/11/bits/alloc_traits.h:535
#4  Array<octave_value, std::allocator<octave_value> >::ArrayRep::deallocate
(this=0x7f4aa09be1c0, len=1, data=0x7f4aa09a4730)
    at ../liboctave/array/Array.h:206
#5  Array<octave_value, std::allocator<octave_value> >::ArrayRep::~ArrayRep
(this=0x7f4aa09be1c0, __in_chrg=<optimized out>)
    at ../liboctave/array/Array.h:187
#6  Array<octave_value, std::allocator<octave_value> >::~Array
(this=0x7f4aa0a3aec0, __in_chrg=<optimized out>)
    at ../liboctave/array/Array.h:356
#7  Cell::~Cell (this=0x7f4aa0a3aec0, __in_chrg=<optimized out>) at
../libinterp/corefcn/Cell.h:52
#8  std::_Destroy<Cell> (__pointer=0x7f4aa0a3aec0) at
/usr/include/c++/11/bits/stl_construct.h:151
#9  std::_Destroy_aux<false>::__destroy<Cell*> (__last=<optimized out>,
__first=0x7f4aa0a3aec0)
    at /usr/include/c++/11/bits/stl_construct.h:163
#10 std::_Destroy<Cell*> (__last=<optimized out>, __first=<optimized out>) at
/usr/include/c++/11/bits/stl_construct.h:196
#11 std::_Destroy<Cell*, Cell> (__last=0x7f4aa0a3aef0, __first=<optimized
out>) at /usr/include/c++/11/bits/alloc_traits.h:854
#12 std::vector<Cell, std::allocator<Cell> >::~vector (this=0x7f4aa09e0008,
__in_chrg=<optimized out>)
    at /usr/include/c++/11/bits/stl_vector.h:680
#13 octave_map::~octave_map (this=0x7f4aa09e0000, __in_chrg=<optimized out>)
at ../libinterp/corefcn/oct-map.h:276
#14 0x00007f4af65fc85f in octave_class::~octave_class (this=0x7f4aa09dfff0,
__in_chrg=<optimized out>)
    at /usr/include/c++/11/ext/new_allocator.h:89
#15 octave_class::~octave_class (this=0x7f4aa09dfff0, __in_chrg=<optimized
out>) at ../libinterp/octave-value/ov-class.h:80
#16 0x00007f4af73f38a9 in octave_value::~octave_value (this=0x29422f0,
__in_chrg=<optimized out>)
    at ../libinterp/octave-value/ov.h:387
#17 octave_value::~octave_value (this=0x29422f0, __in_chrg=<optimized out>) at
../libinterp/octave-value/ov.h:380
#18 octave::symbol_info::~symbol_info (this=0x29422d0, __in_chrg=<optimized
out>) at ../libinterp/corefcn/syminfo.h:55
#19 __gnu_cxx::new_allocator<std::_List_node<octave::symbol_info>
>::destroy<octave::symbol_info> (__p=0x29422d0, this=0x2389e00)
    at /usr/include/c++/11/ext/new_allocator.h:168
#20 std::allocator_traits<std::allocator<std::_List_node<octave::symbol_info>
> >::destroy<octave::symbol_info> (__p=0x29422d0, 
    __a=...) at /usr/include/c++/11/bits/alloc_traits.h:535
#21 std::__cxx11::list<octave::symbol_info,
std::allocator<octave::symbol_info> >::_M_erase (__position=
  {m_name = "a", m_value = {m_rep = 0x7f4aa09dfff0}, m_is_complex = false,
m_is_sparse = false, m_is_formal = false, m_is_global = false, m_is_persistent
= false}, this=0x2389e00) at /usr/include/c++/11/bits/stl_list.h:1925
#22 std::__cxx11::list<octave::symbol_info,
std::allocator<octave::symbol_info> >::erase (__position=..., this=0x2389e00)
    at /usr/include/c++/11/bits/list.tcc:158
#23 std::__cxx11::list<octave::symbol_info,
std::allocator<octave::symbol_info> >::erase (__last=..., __first=
  {m_name = "a", m_value = {m_rep = 0x7f4aa09dfff0}, m_is_complex = false,
m_is_sparse = false, m_is_formal = false, m_is_global = false, m_is_persistent
= false}, this=<optimized out>) at /usr/include/c++/11/bits/stl_list.h:1462
#24 std::__cxx11::list<octave::symbol_info,
std::allocator<octave::symbol_info>
>::_M_assign_dispatch<std::_List_const_iterator<octave::symbol_info> >
(this=this@entry=0x2389e00, __first2=..., __first2@entry=
  {m_name = <error reading variable: Cannot create a lazy string with address
0x0, and a non-zero length.>, m_value = {m_rep = 0x1}, m_is_complex = false,
m_is_sparse = 211, m_is_formal = 196, m_is_global = 65, m_is_persistent =
254}, __last2=..., __last2@entry=
  {m_name = <error reading variable: Cannot create a lazy string with address
0x0, and a non-zero length.>, m_value = {m_rep = 0x1}, m_is_complex = false,
m_is_sparse = 211, m_is_formal = 196, m_is_global = 65, m_is_persistent =
254})
    at /usr/include/c++/11/bits/list.tcc:318
#25 0x00007f4af73f38f8 in std::__cxx11::list<octave::symbol_info,
std::allocator<octave::symbol_info> >::operator= (
    __x=empty std::__cxx11::list, this=<optimized out>) at
/usr/include/c++/11/bits/stl_list.h:282
#26 std::__cxx11::list<octave::symbol_info,
std::allocator<octave::symbol_info> >::operator= (__x=empty
std::__cxx11::list, 
    this=<optimized out>) at /usr/include/c++/11/bits/list.tcc:267
#27 octave::base_list<octave::symbol_info>::operator= (bl=..., this=<optimized
out>) at ../liboctave/util/base-list.h:100
#28 octave::symbol_info_list::operator= (this=<optimized out>) at
../libinterp/corefcn/syminfo.h:103
#29 octave::workspace_model::clear_data (this=0x2389de0) at
../libgui/src/workspace-model.cc:222
#30 0x00007f4af73f3a82 in octave::workspace_model::set_workspace
(this=0x2389de0, top_level=<optimized out>, syminfo=...)
    at ../libgui/src/workspace-model.cc:183
#31 0x00007f4af464cf49 in QObject::event(QEvent*) () from
/lib64/libQt5Core.so.5
#32 0x00007f4af50f7443 in QApplicationPrivate::notify_helper(QObject*,
QEvent*) () from /lib64/libQt5Widgets.so.5
#33 0x00007f4af73a5a04 in octave::octave_qapplication::notify (this=0x227f810,
receiver=<optimized out>, ev=<optimized out>)
    at ../libgui/src/octave-qobject.cc:146
#34 0x00007f4af46227d8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() from /lib64/libQt5Core.so.5
#35 0x00007f4af4625d46 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) () from /lib64/libQt5Core.so.5
#36 0x00007f4af4674117 in postEventSourceDispatch(_GSource*, int (*)(void*),
void*) () from /lib64/libQt5Core.so.5
#37 0x00007f4aee7dd05f in g_main_context_dispatch () from
/lib64/libglib-2.0.so.0
#38 0x00007f4aee8322a8 in g_main_context_iterate.constprop () from
/lib64/libglib-2.0.so.0
#39 0x00007f4aee7da853 in g_main_context_iteration () from
/lib64/libglib-2.0.so.0
#40 0x00007f4af4673bb8 in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
from /lib64/libQt5Core.so.5
#41 0x00007f4af46211e2 in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from
/lib64/libQt5Core.so.5
#42 0x00007f4af4629724 in QCoreApplication::exec() () from
/lib64/libQt5Core.so.5
#43 0x00007f4af73a2daf in octave::base_qobject::exec
(this=this@entry=0x7ffe41c4d830) at ../libgui/src/octave-qobject.cc:424
#44 0x00007f4af73b4a2a in octave::qt_application::execute
(this=this@entry=0x7ffe41c4dac0) at ../libgui/src/qt-application.cc:73
#45 0x000000000040237f in main (argc=9, argv=0x7ffe41c4de48) at
../src/main-gui.cc:132
(gdb)



    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?61994>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]