Fix uniffi crash: delay session verification controller delegate setting to when verification is requested

This commit is contained in:
Stefan Ceriu
2023-03-23 12:50:40 +02:00
committed by Stefan Ceriu
parent e5537378d3
commit 646e8b3a55
@@ -57,7 +57,6 @@ class SessionVerificationControllerProxy: SessionVerificationControllerProxyProt
init(sessionVerificationController: SessionVerificationController) { init(sessionVerificationController: SessionVerificationController) {
self.sessionVerificationController = sessionVerificationController self.sessionVerificationController = sessionVerificationController
sessionVerificationController.setDelegate(delegate: WeakSessionVerificationControllerProxy(proxy: self))
} }
deinit { deinit {
@@ -71,7 +70,9 @@ class SessionVerificationControllerProxy: SessionVerificationControllerProxyProt
} }
func requestVerification() async -> Result<Void, SessionVerificationControllerProxyError> { func requestVerification() async -> Result<Void, SessionVerificationControllerProxyError> {
await Task.dispatch(on: .global()) { sessionVerificationController.setDelegate(delegate: WeakSessionVerificationControllerProxy(proxy: self))
return await Task.dispatch(on: .global()) {
do { do {
try self.sessionVerificationController.requestVerification() try self.sessionVerificationController.requestVerification()
return .success(()) return .success(())