From 344f7d26103f007378b15e08eaa5d41fdbafd26a Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 26 May 2025 09:04:03 +0200 Subject: [PATCH] fix: make setupBackgroundSync run in background --- cw_monero/lib/api/wallet_manager.dart | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/cw_monero/lib/api/wallet_manager.dart b/cw_monero/lib/api/wallet_manager.dart index 9b369c155..209e67ebc 100644 --- a/cw_monero/lib/api/wallet_manager.dart +++ b/cw_monero/lib/api/wallet_manager.dart @@ -418,11 +418,20 @@ Future loadWallet( } } -void setupBackgroundSync(String password, Wallet2Wallet wallet) { +Future setupBackgroundSync(String password, Wallet2Wallet wallet) async { if (isViewOnlyBySpendKey(wallet)) { return; } - wallet.setupBackgroundSync(backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: ''); + final wptrAddr = wallet.ffiAddress(); + await Isolate.run(() { + monero.Wallet_setupBackgroundSync( + Pointer.fromAddress(wptrAddr), + backgroundSyncType: 2, + walletPassword: password, + backgroundCachePassword: '', + ); + }); + // wallet.setupBackgroundSync(backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: ''); if (wallet.status() != 0) { // We simply ignore the error. printV("setupBackgroundSync: ${wallet.errorString()}");