fix: null guard m_monitor in Hy3TabGroup::tick()
workspace->m_monitor can be null during monitor disconnect (dpms off),
causing a SEGV when dereferencing m_monitor->m_id.
Diff
1diff --git a/CHANGELOG.md b/CHANGELOG.md
2index 6bff3940031b5ba66b49e3e3f0aca9b57521f4b0..89ed4fb173221c3ea8155a7e4183f5d947e91a81 100644
3--- a/CHANGELOG.md
4+++ b/CHANGELOG.md
5@@ -3,6 +3,7 @@
6 # Upcoming
7 8 - Fixed a crash when using locked opaque tabs.
9+- Fixed a crash when removing a monitor.
1011 # hl0.54.2.1 and before
1213diff --git a/src/TabGroup.cpp b/src/TabGroup.cpp
14index b3eb5d2882c7a2bfc893940871fb09fd57824b97..4d04d27960ef02bd1c0e957f799d352943fdbc01 100644
15--- a/src/TabGroup.cpp
16+++ b/src/TabGroup.cpp
17@@ -650,7 +650,7 @@ void Hy3TabGroup::tick() {
1819 this->bar.tick();
2021- if (valid(this->workspace)) {
22+ if (valid(this->workspace) && this->workspace->m_monitor) {
23 auto has_fullscreen = this->workspace->m_hasFullscreenWindow;
2425 if (!has_fullscreen && *no_gaps_when_only) {