mirror of
https://github.com/nextcloud/talk-android.git
synced 2024-11-28 09:38:14 +03:00
609e5a2c71
This is necessary as many of the workers store user data. When running in parallel, there are race conditions and user data that was stored by one worker gets directly overwritten by the next worker. E.g. this happened with the "externalSignalingServer" attribute of user: SignalingSettingsWorker saved the user with the externalSignalingServer value, but then CapabilitiesWorker kicked in and saved the user without this value. Because of this, in WebsocketConnectionsWorker getExternalSignalingServer() of the user was null. Because of this, webSocketConnectionHelper.getExternalSignalingInstanceForServer(..) was not called. So the webSocketInstanceMap in WebSocketConnectionHelper was never filled. This is why WebSocketConnectionHelper.getMagicWebSocketInstanceForUserId(..) in ChatController failed to get a webSocketInstance. Signed-off-by: Marcel Hibbe <dev@mhibbe.de> |
||
---|---|---|
.. | ||
schemas/com.nextcloud.talk.data.source.local.TalkDatabase | ||
src | ||
build.gradle | ||
lint.xml | ||
proguard-rules.pro |