aboutsummaryrefslogtreecommitdiffstats
path: root/src/systemtask/SystemTask.cpp
diff options
context:
space:
mode:
authorRiku Isokoski <riksu9000@gmail.com>2021-07-23 22:52:08 +0300
committerGitHub <noreply@github.com>2021-07-23 22:52:08 +0300
commitd666c5004f27da2c72abd6f94881143bc157a10d (patch)
tree75d0afb1853029264cb1198af9521c3bd1fe675e /src/systemtask/SystemTask.cpp
parentdc2b5f0c6b387f674915d0dbe817b7ac2a821e07 (diff)
parentd6cccc2dcd95a7d332ee657d1357ae060389f6e6 (diff)
Merge branch 'develop' into new_touch_handler
Diffstat (limited to 'src/systemtask/SystemTask.cpp')
-rw-r--r--src/systemtask/SystemTask.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 252d3cc3..a2589931 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -202,7 +202,11 @@ void SystemTask::Work() {
Messages message = static_cast<Messages>(msg);
switch (message) {
case Messages::EnableSleeping:
- doNotGoToSleep = false;
+ // Make sure that exiting an app doesn't enable sleeping,
+ // if the exiting was caused by a firmware update
+ if (!bleController.IsFirmwareUpdating()) {
+ doNotGoToSleep = false;
+ }
break;
case Messages::DisableSleeping:
doNotGoToSleep = true;
@@ -279,10 +283,11 @@ void SystemTask::Work() {
displayApp.PushMessage(Pinetime::Applications::Display::Messages::BleFirmwareUpdateStarted);
break;
case Messages::BleFirmwareUpdateFinished:
+ if (bleController.State() == Pinetime::Controllers::Ble::FirmwareUpdateStates::Validated) {
+ NVIC_SystemReset();
+ }
doNotGoToSleep = false;
xTimerStart(idleTimer, 0);
- if (bleController.State() == Pinetime::Controllers::Ble::FirmwareUpdateStates::Validated)
- NVIC_SystemReset();
break;
case Messages::OnTouchEvent:
ReloadIdleTimer();