From d0b5052452a4abb01ffbbb547108dbf2adeeaa94 Mon Sep 17 00:00:00 2001 From: Lysec Date: Thu, 12 Mar 2026 10:07:55 +0100 Subject: [PATCH] fix(workspace): potential fix for SIGSEGV caused by re-entrant incubation --- Modules/Bar/Widgets/Workspace.qml | 7 ++++--- Services/Compositor/CompositorService.qml | 3 --- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/Modules/Bar/Widgets/Workspace.qml b/Modules/Bar/Widgets/Workspace.qml index 7a5c3ef74..df48743af 100644 --- a/Modules/Bar/Widgets/Workspace.qml +++ b/Modules/Bar/Widgets/Workspace.qml @@ -700,13 +700,14 @@ Item { } } - Component.onCompleted: updateWindows() - onWorkspaceModelChanged: updateWindows() + // Deferred to avoid re-entrant incubation: when localWorkspaces.append() + Component.onCompleted: Qt.callLater(updateWindows) + onWorkspaceModelChanged: Qt.callLater(updateWindows) Connections { target: root function onWindowRevisionChanged() { - groupedContainer.updateWindows(); + Qt.callLater(groupedContainer.updateWindows); } } diff --git a/Services/Compositor/CompositorService.qml b/Services/Compositor/CompositorService.qml index eaff86edc..f9f7427ef 100644 --- a/Services/Compositor/CompositorService.qml +++ b/Services/Compositor/CompositorService.qml @@ -211,10 +211,7 @@ Singleton { }); backend.windowListChanged.connect(() => { - // Sync windows when they change syncWindows(); - // Forward the signal - windowListChanged(); }); // Property bindings - use automatic property change signal