diff --git a/src/widgets/widgets/qmainwindowlayout.cpp b/src/widgets/widgets/qmainwindowlayout.cpp index 6658c24a547..9291fbf240c 100644 --- a/src/widgets/widgets/qmainwindowlayout.cpp +++ b/src/widgets/widgets/qmainwindowlayout.cpp @@ -2726,6 +2726,11 @@ QMainWindowLayout::~QMainWindowLayout() layoutState.deleteCentralWidgetItem(); delete statusbar; + + // unusedTabBars contains unparented tab bars, which need to be removed manually. + // ~QMainWindowTabBar() removes the barĀ from unusedTabBars => call qDeleteAll() on a copy. + const auto bars = unusedTabBars; + qDeleteAll(bars); } void QMainWindowLayout::setDockOptions(QMainWindow::DockOptions opts)