framescheduler: fix edge case crashes
rare UAFs because renderMonitor can call onDisconnect (ugh, that should be changed...) fixes #11073
This commit is contained in:
parent
1cbb62ed6a
commit
78c9e2080c
3 changed files with 38 additions and 12 deletions
|
|
@ -22,15 +22,19 @@ class CMonitorFrameScheduler {
|
|||
void onFrame();
|
||||
|
||||
private:
|
||||
bool canRender();
|
||||
void onFinishRender();
|
||||
bool newSchedulingEnabled();
|
||||
bool canRender();
|
||||
void onFinishRender();
|
||||
bool newSchedulingEnabled();
|
||||
|
||||
bool m_renderAtFrame = true;
|
||||
bool m_pendingThird = false;
|
||||
hrc::time_point m_lastRenderBegun;
|
||||
bool m_renderAtFrame = true;
|
||||
bool m_pendingThird = false;
|
||||
hrc::time_point m_lastRenderBegun;
|
||||
|
||||
PHLMONITORREF m_monitor;
|
||||
PHLMONITORREF m_monitor;
|
||||
|
||||
UP<CEGLSync> m_sync;
|
||||
UP<CEGLSync> m_sync;
|
||||
|
||||
WP<CMonitorFrameScheduler> m_self;
|
||||
|
||||
friend class CMonitor;
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue