emoon/Rute

Crash on exit

Closed this issue · 0 comments

emoon commented

Currently there is a crash on exit in

  * frame #0: 0x0000000101db3c26 QtCore`QObject::~QObject() + 1686
    frame #1: 0x0000000101989043 QtGui`QAccessibleCache::~QAccessibleCache() + 227
    frame #2: 0x00000001016625f6 QtGui`(anonymous namespace)::Q_QGS_qAccessibleCache::innerFunction()::Cleanup::~Cleanup() + 22
    frame #3: 0x00007fff506bd051 libsystem_c.dylib`__cxa_finalize_ranges + 351

This is because the the DLL has new Qt types and gets unloaded before the C++ cleanup pass happens and at this point the code is gone.

The plan is to "manually" delete the Qt objects instead (which in Rust can be done using the Drop trait so it should all be fine.