From b7e3d10fb79671a9d8dba14cd3d76727f00b6da2 Mon Sep 17 00:00:00 2001 From: Alexis Date: Mon, 20 Aug 2018 00:19:27 +0200 Subject: [PATCH] revert(workspaces): ipc command out of update func --- src/modules/sway/workspaces.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/modules/sway/workspaces.cpp b/src/modules/sway/workspaces.cpp index e65e8862..3e004f9f 100644 --- a/src/modules/sway/workspaces.cpp +++ b/src/modules/sway/workspaces.cpp @@ -20,6 +20,9 @@ waybar::modules::sway::Workspaces::Workspaces(Bar &bar, Json::Value config) } else if (!workspaces_.empty()) { ipcRecvResponse(ipc_eventfd_); } + std::lock_guard lock(mutex_); + auto res = ipcSingleCommand(ipcfd_, IPC_GET_WORKSPACES, ""); + workspaces_ = parser_.parse(res.payload); thread_.emit(); } catch (const std::exception& e) { std::cerr << e.what() << std::endl; @@ -36,8 +39,6 @@ waybar::modules::sway::Workspaces::~Workspaces() auto waybar::modules::sway::Workspaces::update() -> void { std::lock_guard lock(mutex_); - auto res = ipcSingleCommand(ipcfd_, IPC_GET_WORKSPACES, ""); - workspaces_ = parser_.parse(res.payload); bool needReorder = false; for (auto it = buttons_.begin(); it != buttons_.end();) { auto ws = std::find_if(workspaces_.begin(), workspaces_.end(),