Public bug reported: DeferredDelete events are handled only for the main loop "level" that object->deleteLater() was called in. Events dispatched directly from GLib don't pass through qt's dispatching, thus getting a level of 0, which means that they aren't handled until the program exits (i.e., as long as level 0 exists).
This is causing apparent memory leaks in long-running applications. We're working around this by using queued signal connections or calling sendPostedEvents(). For example in https://code.launchpad.net/~lukas-kde/gsettings-qt/queued- processing/+merge/259883 Upstream: https://bugreports.qt.io/browse/QTBUG-32859 ** Affects: qtbase-opensource-src (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1460970 Title: DeferredDelete events not handled in time when created by GLib dispatched events To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/qtbase-opensource-src/+bug/1460970/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs