summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/events/Monitors.cpp3
-rw-r--r--src/helpers/Monitor.cpp4
2 files changed, 5 insertions, 2 deletions
diff --git a/src/events/Monitors.cpp b/src/events/Monitors.cpp
index 211562b0..6484f4d1 100644
--- a/src/events/Monitors.cpp
+++ b/src/events/Monitors.cpp
@@ -286,7 +286,8 @@ void Events::listener_monitorFrame(void* owner, void* data) {
pixman_region32_fini(&frameDamage);
pixman_region32_fini(&damage);
- wlr_output_commit(PMONITOR->output);
+ if (!wlr_output_commit(PMONITOR->output))
+ return;
if (*PDAMAGEBLINK || *PNOVFR)
g_pCompositor->scheduleFrameForMonitor(PMONITOR);
diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp
index 509f292d..ab04bcbe 100644
--- a/src/helpers/Monitor.cpp
+++ b/src/helpers/Monitor.cpp
@@ -65,6 +65,8 @@ void CMonitor::onConnect(bool noRule) {
}
if (!m_bRenderingInitPassed) {
+ output->allocator = nullptr;
+ output->renderer = nullptr;
wlr_output_init_render(output, g_pCompositor->m_sWLRAllocator, g_pCompositor->m_sWLRRenderer);
m_bRenderingInitPassed = true;
}
@@ -356,4 +358,4 @@ void CMonitor::setMirror(const std::string& mirrorOf) {
g_pCompositor->m_pLastMonitor = g_pCompositor->m_vMonitors.front().get();
}
-} \ No newline at end of file
+}