Comment 1 for bug 1526877

Revision history for this message
James Henstridge (jamesh) wrote :

This sounds a lot like bug 1422304, by the look of it.

Both QtDBus and dbus-cpp make use of libdbus. Libdbus provides a dbus_shutdown() function that will release various internal global state, which can be used to remove those allocation from the report valgrind produces when analysing your program. Normally applications shouldn't have a need to call it.

Anything allocated (connections, method calls, etc) before the call to shutdown can not be used after the call, which is what the _dbus_current_generation assertions are about.

dbus-cpp makes a call to dbus_shutdown() as an atexit handler. Unfortunately, Qt hasn't cleaned up its connections at this time, leading to errors.