Skip to content

Commit

Permalink
Merge pull request #2613 from DreamMaoMao/master
Browse files Browse the repository at this point in the history
Fixed variable synchronization exception caused by the "hyprland/workspace" module
  • Loading branch information
Alexays authored Oct 27, 2023
2 parents 95b0647 + 1f0ce1a commit e46f66b
Showing 1 changed file with 12 additions and 4 deletions.
16 changes: 12 additions & 4 deletions src/modules/hyprland/workspaces.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -153,17 +153,25 @@ auto Workspaces::register_ipc() -> void {
}

auto Workspaces::update() -> void {
//remove workspaces that wait to be removed
unsigned int current_remove_workspace_num = 0;
for (const std::string &workspace_to_remove : workspaces_to_remove_) {
remove_workspace(workspace_to_remove);
current_remove_workspace_num++;
}
for (unsigned int i = 0; i < current_remove_workspace_num; i++) {
workspaces_to_remove_.erase(workspaces_to_remove_.begin());
}

workspaces_to_remove_.clear();

//add workspaces that wait to be created
unsigned int current_create_workspace_num = 0;
for (Json::Value const &workspace_to_create : workspaces_to_create_) {
create_workspace(workspace_to_create);
current_create_workspace_num++;
}
for (unsigned int i = 0; i < current_create_workspace_num; i++) {
workspaces_to_create_.erase(workspaces_to_create_.begin());
}

workspaces_to_create_.clear();

// get all active workspaces
auto monitors = gIPC->getSocket1JsonReply("monitors");
Expand Down

0 comments on commit e46f66b

Please sign in to comment.