It seems that these crashes started with the move to Kirigami 2 and Quick.Controls.2 - but since they are somewhat hard to reproduce, I'm not 100% sure.
I have been able to create one scenario where I can trigger the crash reliably under a debugger, and the stack trace doesn't really tell me much. We appear to be loading all of our code and based on the debug output we are just about to show the UI when things crash. frame #0: 0x009354be Subsurface-mobile`QQuickItem::~QQuickItem(this=0x19f07e40) + 198 at qquickitem.cpp:2314 frame #1: 0x0097482e Subsurface-mobile`QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement(this=0x19f07e40) + 46 at qqmlprivate.h:104 frame #2: 0x003b5ee4 Subsurface-mobile`QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement(this=0x19f07e40) + 16 at qqmlprivate.h:102 frame #3: 0x009747c8 Subsurface-mobile`QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement(this=0x19f07e40) + 16 at qqmlprivate.h:102 frame #4: 0x012386b4 Subsurface-mobile`QObjectPrivate::deleteChildren(this=0x19f0c950) + 164 at qobject.cpp:1970 frame #5: 0x01238494 Subsurface-mobile`QObject::~QObject(this=0x19f0c8f0) + 1372 at qobject.cpp:1041 frame #6: 0x009356a4 Subsurface-mobile`QQuickItem::~QQuickItem(this=0x19f0c8f0) + 684 at qquickitem.cpp:2356 frame #7: 0x003fccdc Subsurface-mobile`QQuickControl::~QQuickControl(this=0x19f0c8f0) + 20 at qquickcontrol_p.h:59 frame #8: 0x003b9bd0 Subsurface-mobile`QQuickAbstractButton::~QQuickAbstractButton(this=0x19f0c8f0) + 72 at qquickabstractbutton.cpp:231 frame #9: 0x003a3304 Subsurface-mobile`QQuickItemDelegate::~QQuickItemDelegate(this=0x19f0c8f0) + 20 at qquickitemdelegate_p.h:57 frame #10: 0x003a6906 Subsurface-mobile`QQmlPrivate::QQmlElement<QQuickItemDelegate>::~QQmlElement(this=0x19f0c8f0) + 46 at qqmlprivate.h:104 frame #11: 0x003a686c Subsurface-mobile`QQmlPrivate::QQmlElement<QQuickItemDelegate>::~QQmlElement(this=0x19f0c8f0) + 16 at qqmlprivate.h:102 frame #12: 0x003a6888 Subsurface-mobile`QQmlPrivate::QQmlElement<QQuickItemDelegate>::~QQmlElement(this=0x19f0c8f0) + 16 at qqmlprivate.h:102 frame #13: 0x012390d6 Subsurface-mobile`qDeleteInEventHandler(o=0x19f0c8f0) + 26 at qobject.cpp:4552 frame #14: 0x01238d82 Subsurface-mobile`QObject::event(this=0x19f0c8f0, e=0x19f03c90) + 226 at qobject.cpp:1254 frame #15: 0x0093f2d2 Subsurface-mobile`QQuickItem::event(this=0x19f0c8f0, ev=0x19f03c90) + 706 at qquickitem.cpp:7698 frame #16: 0x0054010c Subsurface-mobile`QApplicationPrivate::notify_helper(this=0x17e92110, receiver=0x19f0c8f0, e=0x19f03c90) + 280 at qapplication.cpp:3745 frame #17: 0x005414bc Subsurface-mobile`QApplication::notify(this=0x17d2a210, receiver=0x19f0c8f0, e=0x19f03c90) + 1196 at qapplication.cpp:3105 frame #18: 0x01209ca2 Subsurface-mobile`QCoreApplication::notifyInternal2(receiver=0x19f0c8f0, event=0x19f03c90) + 374 at qcoreapplication.cpp:988 frame #19: 0x009573e4 Subsurface-mobile`QCoreApplication::sendEvent(receiver=0x19f0c8f0, event=0x19f03c90) + 36 at qcoreapplication.h:231 frame #20: 0x0120ac78 Subsurface-mobile`QCoreApplicationPrivate::sendPostedEvents(receiver=0x00000000, event_type=0, data=0x17d297d0) + 952 at qcoreapplication.cpp:1648 frame #21: 0x0120a424 Subsurface-mobile`QCoreApplication::sendPostedEvents(receiver=0x00000000, event_type=0) + 32 at qcoreapplication.cpp:1502 frame #22: 0x012b53f0 Subsurface-mobile`QEventDispatcherCoreFoundation::processPostedEvents(this=0x17e7ed90) + 184 at qeventdispatcher_cf.mm:405 frame #23: 0x00436be4 Subsurface-mobile`QIOSEventDispatcher::processPostedEvents(this=0x17e7ed90) + 20 at qioseventdispatcher.mm:481 frame #24: 0x012b6be0 Subsurface-mobile`RunLoopSource<QEventDispatcherCoreFoundation>::process(info=0x17e7eda4) + 72 at qeventdispatcher_cf_p.h:145 frame #25: 0x23b1b9e6 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 14 frame #26: 0x23b1b568 CoreFoundation`__CFRunLoopDoSources0 + 344 frame #27: 0x23b1993e CoreFoundation`__CFRunLoopRun + 806 frame #28: 0x23a681c8 CoreFoundation`CFRunLoopRunSpecific + 516 frame #29: 0x23a67fbc CoreFoundation`CFRunLoopRunInMode + 108 frame #30: 0x25084af8 GraphicsServices`GSEventRunModal + 160 frame #31: 0x2819b434 UIKit`UIApplicationMain + 144 frame #32: 0x00435c54 Subsurface-mobile`::qt_main_wrapper(argc=1, argv=0x0362fa90) + 468 at qioseventdispatcher.mm:232 frame #33: 0x23714872 libdyld.dylib`start + 2 We seem to be crashing deep inside the destructor of a Delegate which appears to be a QQuickAbstractButton. Marco - does this tell you anything more useful? I'll be happy to try some things now that I can reproduce the crash. Thanks /D _______________________________________________ subsurface mailing list [email protected] http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
