Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
lp1912129: Always destroy MixxxMainWindow before CoreServices
Fixes [lp1912129]. This gets rid of an issue where Mixxx failed with an assertion during shutdown that complained about leaked controls (that are owned by the menu bar): warning [Main] The following 6 controls were leaked: warning [Main] "[VinylControl]" "show_vinylcontrol" QObject(0x0) warning [Main] "[Master]" "skin_settings" QObject(0x0) warning [Main] "[PreviewDeck]" "show_previewdeck" QObject(0x0) warning [Main] "[Master]" "maximize_library" QObject(0x0) warning [Main] "[Library]" "show_coverart" QObject(0x0) warning [Main] "[Microphone]" "show_microphone" QObject(0x0) DEBUG ASSERT: "!"Controls were leaked!"" in function void mixxx::CoreServices::shutdown() at /home/jan/Projects/mixxx/src/coreservices.cpp:582 Aborted (core dumped) The issue occurs when shutting down Mixxx by pressing <Super>+q in Pop! Shell which closes the window immediately. Apparently this is incomaptible with our `sendPostedEvents()` trick to destroy the menubar and leads to `CoreServices` being shut down before the Menubar is actually destroyed, leaving some COs intact and triggering the assertion. This fixes the issue by ensuring that `MixxxMainWindow` is always completely destroyed before `CoreServices::shutdown()` is called. [lp1912129]: https://bugs.launchpad.net/mixxx/+bug/1912129
- Loading branch information