diff --git a/src/config/ConfigManager.cpp b/src/config/ConfigManager.cpp index 735cc699b..66c223180 100644 --- a/src/config/ConfigManager.cpp +++ b/src/config/ConfigManager.cpp @@ -1263,9 +1263,8 @@ void CConfigManager::loadConfigLoadVars() { // and they'll be taken care of in the newMonitor event // ignore if nomonitorreload is set if (!isFirstLaunch && !m_bNoMonitorReload) { - m_bWantsMonitorReload = true; - // check + performMonitorReload(); ensureDPMS(); ensureVRR(); } @@ -1576,6 +1575,9 @@ void CConfigManager::performMonitorReload() { if (overAgain) performMonitorReload(); + if (!g_pCompositor->m_vMonitors.empty()) // reset unsafe state if we have monitors + g_pCompositor->m_bUnsafeState = false; + m_bWantsMonitorReload = false; }