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

Reply via email to