|
From: | Rik |
Subject: | [Octave-bug-tracker] [bug #60334] Embedded Octave crashes on exit in octave::interpreter::~interpreter() |
Date: | Mon, 19 Apr 2021 18:58:08 -0400 (EDT) |
User-agent: | Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 |
Follow-up Comment #21, bug #60334 (project octave): I can verify that changing the interpreter destructor to this gets rid of any segfault. interpreter::~interpreter (void) { m_symbol_table.cleanup (); // FIX invalid read access to m_cdef_manager delete m_gh_manager; } Using a call to shutdown() in the destructor did not work as well as the symbol table cleanup. Octave didn't seem to crash, but it printed these two message at exit error: ignoring const execution_exception& while preparing to exit error: ignoring const execution_exception& while preparing to exit So, there does seem a way out of this. The question is whether it is enough. Octave does call m_symbol_table.cleanup () from within the shutdown() function. So maybe the resolution is to call shutdown() from the interpreter destructor, but re-order the sequence of calls within shutdown(). _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?60334> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/
[Prev in Thread] | Current Thread | [Next in Thread] |