From b37f84ba414f36d941d42f7addb2f8ca1516d3d6 Mon Sep 17 00:00:00 2001 From: Nodir Temirkhodjaev Date: Fri, 4 Apr 2025 19:37:59 +0500 Subject: [PATCH] QMainWindowLayout: Fix build with -no-feature-dockwidget Make deletion of unused tab bars conditional to dockwidget and tabwidget features. Task-number: QTBUG-135468 Pick-to: 6.9 6.8 6.5 Change-Id: I0ecb55ab20737f401796cdd4ebbc6040e54b5afe Reviewed-by: Axel Spoerl --- src/widgets/widgets/qmainwindowlayout.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/widgets/widgets/qmainwindowlayout.cpp b/src/widgets/widgets/qmainwindowlayout.cpp index 4ce5ba4e7c5..14a8bbd857d 100644 --- a/src/widgets/widgets/qmainwindowlayout.cpp +++ b/src/widgets/widgets/qmainwindowlayout.cpp @@ -2727,10 +2727,12 @@ QMainWindowLayout::~QMainWindowLayout() delete statusbar; +#if QT_CONFIG(dockwidget) && QT_CONFIG(tabwidget) // 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); +#endif // QT_CONFIG(dockwidget) && QT_CONFIG(tabwidget) } void QMainWindowLayout::setDockOptions(QMainWindow::DockOptions opts)