By the way, I would have expected QQbject to "deparent" C before the destroyed() signal is sent to connected slots. This would have prevented the crash there.
Etienne 2015-11-10 8:01 GMT+01:00 Etienne Sandré-Chardonnal <[email protected]> : > Hi, > > I have fixed the crash problem, but the double destructor is still there. > For the record, what is the compiler mechanism behind this? > > The crash issue was simple : I have three QObjects with parents A -> B -> > C (grandchild) > The C destructor was sending destroyed() signal to B slot, which was > sending a signal to A's slot, which was deleting B, still a parent of C. > Replacing "delete B" by "B->deleteLater()" fixed it. But the double > destructor in stack is unrelated and still there. > > Thanks > > > > > 2015-11-09 18:19 GMT+01:00 Thiago Macieira <[email protected]>: > >> On Monday 09 November 2015 16:21:44 Etienne Sandré-Chardonnal wrote: >> > Dear all, >> > >> > I am debugging an app which crashes when an object is being deleted. The >> > debuggers halt on a segmentation fault inside QObject destructor. The >> > object deletion was requested by a call to deleteLater() >> > >> > Here is what I get in the stack trace: >> > >> > 0 QObject::~QObject qobject.cpp 993 0x7ffff62c7580 >> > 1 RendererInterface::~RendererInterface rendererinterface.cpp >> > 119 0x60664f >> > 2 RendererInterface::~RendererInterface rendererinterface.cpp >> > 137 0x60667e >> > 3 qDeleteInEventHandler qobject.cpp 4391 0x7ffff62d06e5 >> > >> > How is it possible to have the destructor twice in the stack?? At the >> > beginning I was thinking this was a GDB bug (GDB/MinGW under windows is >> > buggy) but I get the same result when compiling the app under linux. >> > >> > Any idea how this can happen? >> >> It depends on what code the compiler generated. It's entirely possible, >> but I >> can't also rule out a problem. >> >> -- >> Thiago Macieira - thiago.macieira (AT) intel.com >> Software Architect - Intel Open Source Technology Center >> >> _______________________________________________ >> Interest mailing list >> [email protected] >> http://lists.qt-project.org/mailman/listinfo/interest >> > >
_______________________________________________ Interest mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/interest
