@@ -120,23 +120,31 @@ + (void)loadRoomStateFromStore:(id<MXStore>)store
120120 {
121121 [store stateOfRoom: roomId success: ^(NSArray <MXEvent *> * _Nonnull stateEvents) {
122122 if (!stateEvents.count ) {
123- MXLogWarning (@" [MXRoomState] loadRoomStateFromStore(%@ ): No state events stored, loading from api " , logId);
123+ MXLogWarning (@" [MXRoomState] loadRoomStateFromStore(%@ ): No state events stored, loading from API " , logId);
124124
125- [matrixSession.matrixRestClient stateOfRoom: roomId success: ^(NSArray *JSONData) {
126- NSArray <MXEvent *> *events = [MXEvent modelsFromJSON: JSONData];
127- MXLogDebug (@" [MXRoomState] loadRoomStateFromStore(%@ ): Loaded %lu events from api" , logId, events.count );
128-
129- [roomState handleStateEvents: events];
130- onComplete (roomState);
131- } failure: ^(NSError *error) {
132- NSDictionary *details = @{
133- @" log_id" : logId ?: @" unknown" ,
134- @" error" : error ?: @" unknown"
135- };
136- MXLogErrorDetails (@" [MXRoomState] loadRoomStateFromStore: Failed to load any events from api" , details);
137-
125+ if (!matrixSession)
126+ {
127+ MXLogError (@" [MXRoomState] loadRoomStateFromStore: Missing session, unable to load from API" )
138128 onComplete (roomState);
139- }];
129+ }
130+ else
131+ {
132+ [matrixSession.matrixRestClient stateOfRoom: roomId success: ^(NSArray *JSONData) {
133+ NSArray <MXEvent *> *events = [MXEvent modelsFromJSON: JSONData];
134+ MXLogDebug (@" [MXRoomState] loadRoomStateFromStore(%@ ): Loaded %lu events from api" , logId, events.count );
135+
136+ [roomState handleStateEvents: events];
137+ onComplete (roomState);
138+ } failure: ^(NSError *error) {
139+ NSDictionary *details = @{
140+ @" log_id" : logId ?: @" unknown" ,
141+ @" error" : error ?: @" unknown"
142+ };
143+ MXLogErrorDetails (@" [MXRoomState] loadRoomStateFromStore: Failed to load any events from API" , details);
144+
145+ onComplete (roomState);
146+ }];
147+ }
140148 } else {
141149 MXLogDebug (@" [MXRoomState] loadRoomStateFromStore(%@ ): Initializing with %lu state events" , logId, stateEvents.count );
142150
0 commit comments