@@ -725,6 +725,21 @@ class PerAccountStore extends PerAccountStoreBase with
725725    super .dispose ();
726726  }
727727
728+   Future <void > _handleRestartEvent (RestartEvent  event) async  {
729+     if  (event.zulipVersion !=  account.zulipVersion
730+         ||  event.zulipMergeBase !=  account.zulipMergeBase
731+         ||  event.zulipFeatureLevel !=  account.zulipFeatureLevel) {
732+       // TODO(#1271): replace event queue, if zulipFeatureLevel makes it necessary 
733+       await  _globalStore.updateAccount (accountId, AccountsCompanion (
734+         zulipVersion:  Value (event.zulipVersion),
735+         zulipMergeBase:  Value (event.zulipMergeBase),
736+         zulipFeatureLevel:  Value (event.zulipFeatureLevel),
737+       ));
738+       connection.zulipFeatureLevel =  event.zulipFeatureLevel;
739+       notifyListeners ();
740+     }
741+   }
742+ 
728743  Future <void > handleEvent (Event  event) async  {
729744    assert (! _disposed);
730745
@@ -874,18 +889,7 @@ class PerAccountStore extends PerAccountStoreBase with
874889
875890      case  RestartEvent (): 
876891        assert (debugLog ("server event: restart" ));
877-         if  (event.zulipVersion !=  account.zulipVersion
878-             ||  event.zulipMergeBase !=  account.zulipMergeBase
879-             ||  event.zulipFeatureLevel !=  account.zulipFeatureLevel) {
880-           // TODO(#1271): replace event queue, if zulipFeatureLevel makes it necessary 
881-           await  _globalStore.updateAccount (accountId, AccountsCompanion (
882-             zulipVersion:  Value (event.zulipVersion),
883-             zulipMergeBase:  Value (event.zulipMergeBase),
884-             zulipFeatureLevel:  Value (event.zulipFeatureLevel),
885-           ));
886-           connection.zulipFeatureLevel =  event.zulipFeatureLevel;
887-           notifyListeners ();
888-         }
892+         await  _handleRestartEvent (event);
889893
890894      case  UnexpectedEvent (): 
891895        assert (debugLog ("server event: ${jsonEncode (event .toJson ())}" )); // TODO log better 
0 commit comments