commit 8f593bdffa8585741184b2626d883f66c369af94
parent d81aa50d4ec0f944c977512c2e50b56df10e19ab
Author: Marc Stibane <marc@taler.net>
Date: Fri, 8 Nov 2024 17:27:36 +0100
loadBalances
Diffstat:
2 files changed, 3 insertions(+), 6 deletions(-)
diff --git a/TalerWallet1/Controllers/Controller.swift b/TalerWallet1/Controllers/Controller.swift
@@ -117,10 +117,10 @@ class Controller: ObservableObject {
// checkInternetConnection()
}
// MARK: -
- /// runs on MainActor if called in some Task {}
+ @MainActor
@discardableResult
func loadBalances(_ stack: CallStack,_ model: WalletModel) async -> Int? {
- if let reloaded = try? await model.balancesM(stack.push()) {
+ if let reloaded = try? await model.getBalances(stack.push()) {
for balance in reloaded {
let scope = balance.scopeInfo
checkInfo(for: scope, model: model)
diff --git a/TalerWallet1/Model/Model+Balances.swift b/TalerWallet1/Model/Model+Balances.swift
@@ -69,10 +69,7 @@ fileprivate struct Balances: WalletBackendFormattedRequest {
// MARK: -
extension WalletModel {
/// fetch Balances from Wallet-Core. No networking involved
- @MainActor func balancesM(_ stack: CallStack, viewHandles: Bool = false)
- async throws -> [Balance] { // M for MainActor
- await semaphore.wait()
- defer { semaphore.signal() }
+ nonisolated func getBalances(_ stack: CallStack, viewHandles: Bool = false) async throws -> [Balance] {
let request = Balances()
let response = try await sendRequest(request, ASYNCDELAY, viewHandles: viewHandles)
return response.balances