How to debug crash caused by calling deleteLater on a QObject derived class?
-
I have a large class that is derived from QObject. The class contains many different types of children which have many connections to various QObject derived classes. When I try to call deleteLater() on the large class, I get a crash subsequently further down the code. When I add print statements to debug the location of the crash, the console output shows that location of crash changes each time I add a different print statement. Not calling deleteLater() prevents the crash from happening, but it is taking up memory space and this class is frequently created through user interaction.
Sometimes during the crash the console will output the error "QCoreApplication::postEvent: Unexpected null receiver". Is the problem caused by still active connections within the children of the class? But calling deleteLater() on the large class should also cause the children to be deleted and their connections deleted as well. What can I do to debug the crash since print statements aren't effective?
-
Hi,
Are you doing any manual delete of parented QObjects ?
Are you parenting stack based QObjects ?