Deferred delete events are not handled if they were posted from a glib event callback execution cycle.
loop level for event = loop level for current thread.
I believe the loop level should be incremented before calling g_main_context_iteration in QEventDispatcherGlib::processEvents.
Test App supplied to reproduce the problem.
unzip and ./run
|For Gerrit Dashboard: QTBUG-32859|
|142309,24||Fix for deferredDelete() bug when calling the glib loop directly||dev||qt/qtbase||Status: MERGED||-2||0|
|149561,1||Fix for deferredDelete() bug when calling the glib loop directly||5.7||qt/qtbase||Status: ABANDONED||0||0|
|150527,3||Fix warnings about constructor initialization order in tst_QObject.||5.7||qt/qtbase||Status: MERGED||+2||0|