change(tracker): webworker has a bug where after being foregrounded (on mobile especially), if the writer or sender is not present, it will throw an error which will bubble up and crash the entire app. Instead, log a debug message and allow the writer / sender to reinit

This commit is contained in:
Dayan Graham 2023-03-09 15:36:38 +00:00 committed by Delirium
parent a116a30969
commit d58b3181dc

View file

@ -136,13 +136,15 @@ self.onmessage = ({ data }: any): any => {
if (data.type === 'auth') {
if (!sender) {
throw new Error('WebWorker: sender not initialised. Received auth.')
console.debug('WebWorker: sender not initialised. Received auth.')
}
if (!writer) {
throw new Error('WebWorker: writer not initialised. Received auth.')
console.debug('WebWorker: writer not initialised. Received auth.')
}
if (sender && writer) {
sender.authorise(data.token)
data.beaconSizeLimit && writer.setBeaconSizeLimit(data.beaconSizeLimit)
}
sender.authorise(data.token)
data.beaconSizeLimit && writer.setBeaconSizeLimit(data.beaconSizeLimit)
return
}
}