According to upstream this is a bug in libstdc++. Here's the comment
from John Lindgren:
"Ubuntu bug reports show crashing in the deconstructor for the C++ class
std::ios_base::Init, which is registered with __cxa_atexit and called by
__cxa_finalize, sometimes when a C++ plugin is unloaded and sometimes
when the program exits. The fact that not unloading any plugins is a
workaround suggests to me that the deconstructor cannot handle being
called more than once. My guess is that there is a bug in the Ubuntu
10.10 version of libstdc++ (but not in the 10.04 version or in the
Debian version that I use).
Since I don't have Ubuntu, I can't try to reproduce this outside of
Audacious for you. But I suggest you try compiling a pure C program that
uses g_module_open to load and initialize (similarly to Audacious) at
least two C++ modules using iostream and then uses g_module_close to
unload them again.
Meanwhile, you should be able to use the workaround of not actually
unloading the plugins without any ill side effects."
** Also affects: gcc-4.5 (Ubuntu)
Importance: Undecided
Status: New
** Package changed: gcc-4.5 (Ubuntu) => gcc-4.4 (Ubuntu)
** Package changed: gcc-4.4 (Ubuntu) => gcc-4.5 (Ubuntu)
--
audacious2 crashed with SIGSEGV in std::ios_base::Init::~Init()
https://bugs.launchpad.net/bugs/640732
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs