frame 9: containment(an applet subclass) gets deleted
frame 8: that deletes it's qobject children
frame 6: that deletes it's ContainmentInterface (the QML exposed containment side)
frame 3: that accesses the applet, which we delete in frame 9
Can do a simple QPointer guard, but that's just masking a more significant problem.
This crash shouldn't happen because:
Applet::~Applet should run between frames 9 and 8, AppletPrivate::~Private runs delete script, delete script *should* delete the ContainmentInterface.
So that means someone somewhere is calling containmentInterface->setParent(theContainment)
Find that and we find our crash.
Writing the top backtrace out in words:
frame 9: containment(an applet subclass) gets deleted rface (the QML exposed containment side)
frame 8: that deletes it's qobject children
frame 6: that deletes it's ContainmentInte
frame 3: that accesses the applet, which we delete in frame 9
Can do a simple QPointer guard, but that's just masking a more significant problem.
This crash shouldn't happen because: :~Private runs delete script, delete script *should* delete the ContainmentInte rface.
Applet::~Applet should run between frames 9 and 8, AppletPrivate:
So that means someone somewhere is calling containmentInte rface-> setParent( theContainment)
Find that and we find our crash.