summaryrefslogtreecommitdiff
path: root/src/managers/EventManager.cpp
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-08-28 11:19:08 +0200
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-08-28 11:19:08 +0200
commitd413388761c85c1bd153a4bbf8b6f96189cd416a (patch)
tree2d073c24292f5ecd94c0b441864bf8b1306fc4e5 /src/managers/EventManager.cpp
parent4203a61b69f5ee31d142920b5ef0b652d7bbb143 (diff)
Multiple improvements to the shutdown procedure
Diffstat (limited to 'src/managers/EventManager.cpp')
-rw-r--r--src/managers/EventManager.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/managers/EventManager.cpp b/src/managers/EventManager.cpp
index 2b2598e1..98dd5049 100644
--- a/src/managers/EventManager.cpp
+++ b/src/managers/EventManager.cpp
@@ -19,7 +19,7 @@ CEventManager::CEventManager() {
}
void CEventManager::startThread() {
- std::thread([&]() {
+ m_tThread = std::thread([&]() {
const auto SOCKET = socket(AF_UNIX, SOCK_STREAM, 0);
if (SOCKET < 0) {
@@ -101,13 +101,15 @@ void CEventManager::startThread() {
}
close(SOCKET);
- }).detach();
+ });
+
+ m_tThread.detach();
}
void CEventManager::postEvent(const SHyprIPCEvent event, bool force) {
- if (m_bIgnoreEvents && !force) {
- Debug::log(WARN, "Suppressed (ignoreevents true) event of type %s, content: %s",event.event.c_str(), event.data.c_str());
+ if ((m_bIgnoreEvents && !force) || g_pCompositor->m_bIsShuttingDown) {
+ Debug::log(WARN, "Suppressed (ignoreevents true / shutting down) event of type %s, content: %s",event.event.c_str(), event.data.c_str());
return;
}