Skip to content

Commit 9797772

Browse files
committed
Fix Mac.
1 parent 0c0ba1c commit 9797772

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

SerialPrograms/Source/CommonFramework/Environment/SystemSleep_Apple.tpp

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -112,16 +112,22 @@ bool AppleSleepController::enable_sleep(){
112112
void AppleSleepController::update_state(){
113113
// Must call under lock.
114114

115+
SleepSuppress before_state = m_state.load(std::memory_order_relaxed);
116+
SleepSuppress after_state = SleepSuppress::NONE;
117+
115118
// TODO: Distiguish these two.
116119
bool enabled = m_screen_on_requests > 0 || m_no_sleep_requests > 0;
117-
prevent_sleep();
118-
119-
m_state.store(
120-
enabled
121-
? SleepSuppress::SCREEN_ON
122-
: SleepSuppress::NONE,
123-
std::memory_order_release
124-
);
120+
prevent_sleep(enabled);
121+
122+
after_state = enabled
123+
? SleepSuppress::SCREEN_ON
124+
: SleepSuppress::NONE,
125+
126+
m_state.store(after_state, std::memory_order_release);
127+
128+
if (before_state != after_state){
129+
notify_listeners(after_state);
130+
}
125131
}
126132

127133

0 commit comments

Comments
 (0)