message: Check window_change_recorder_ for nullptr before accessing it (lib)
  Fixes crash when locking or going to sleep while being logged out (win)
diff: @@ -3777,9 +3777,11 @@ void Context::SetSleep() {
  if (!isHandled) {
  logger().debug("SetSleep");
  idle_.SetSleep();
  + if (window_change_recorder_) {
  window_change_recorder_->SetIsSleeping(true);
  }
  }
  +}
  error Context::AsyncOpenReportsInBrowser() {
  std::thread backgroundThread([&]() {
  @@ -3984,7 +3986,9 @@ void Context::onWake(Poco::Util::TimerTask&) { // NOLINT
  }
  idle_.SetWake(user_);
  + if (window_change_recorder_) {
  window_change_recorder_->SetIsSleeping(false);
  + }
  Sync();
  }
  @@ -4001,13 +4005,17 @@ void Context::onWake(Poco::Util::TimerTask&) { // NOLINT
  void Context::SetLocked() {
  logger().debug("SetLocked");
  + if (window_change_recorder_) {
  window_change_recorder_->SetIsLocked(true);
  }
  +}
  void Context::SetUnlocked() {
  logger().debug("SetUnlocked");
  + if (window_change_recorder_) {
  window_change_recorder_->SetIsLocked(false);
  }
  +}
  void Context::SetOnline() {
  logger().debug("SetOnline");
  