mirror of
https://github.com/hyprwm/Hyprland.git
synced 2025-07-26 09:41:57 -07:00
framescheduler: dont if check deleted weakpointer (#11063)
if m_monitor is destroyed the doOnReadable will eventually hit UB on destruction if checking a destroyed m_monitor. acctually use the captured mon weak pointer.
This commit is contained in:
@@ -103,7 +103,7 @@ void CMonitorFrameScheduler::onFrame() {
|
|||||||
void CMonitorFrameScheduler::onFinishRender() {
|
void CMonitorFrameScheduler::onFinishRender() {
|
||||||
m_sync = CEGLSync::create(); // this destroys the old sync
|
m_sync = CEGLSync::create(); // this destroys the old sync
|
||||||
g_pEventLoopManager->doOnReadable(m_sync->fd().duplicate(), [this, mon = m_monitor] {
|
g_pEventLoopManager->doOnReadable(m_sync->fd().duplicate(), [this, mon = m_monitor] {
|
||||||
if (!m_monitor) // might've gotten destroyed
|
if (!mon) // might've gotten destroyed
|
||||||
return;
|
return;
|
||||||
onSyncFired();
|
onSyncFired();
|
||||||
});
|
});
|
||||||
|
Reference in New Issue
Block a user