Skip to content

Commit 47582d4

Browse files
committed
Migrate CoreDataFeedStoreScheduler to new async API
1 parent c8ef13c commit 47582d4

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

EssentialApp/EssentialApp/CombineHelpers.swift

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,7 @@ extension AnyDispatchQueueScheduler {
227227
CoreDataFeedStoreScheduler(store: store).eraseToAnyScheduler()
228228
}
229229

230+
@MainActor
230231
private struct CoreDataFeedStoreScheduler: Scheduler {
231232
let store: CoreDataFeedStore
232233

@@ -239,7 +240,9 @@ extension AnyDispatchQueueScheduler {
239240
action()
240241
} else {
241242
nonisolated(unsafe) let uncheckedAction = action
242-
store.perform { uncheckedAction() }
243+
Task.immediate {
244+
await store.perform { uncheckedAction() }
245+
}
243246
}
244247
return AnyCancellable {}
245248
}
@@ -249,7 +252,9 @@ extension AnyDispatchQueueScheduler {
249252
action()
250253
} else {
251254
nonisolated(unsafe) let uncheckedAction = action
252-
store.perform { uncheckedAction() }
255+
Task.immediate {
256+
await store.perform { uncheckedAction() }
257+
}
253258
}
254259
}
255260

@@ -258,7 +263,9 @@ extension AnyDispatchQueueScheduler {
258263
action()
259264
} else {
260265
nonisolated(unsafe) let uncheckedAction = action
261-
store.perform { uncheckedAction() }
266+
Task.immediate {
267+
await store.perform { uncheckedAction() }
268+
}
262269
}
263270
}
264271
}

0 commit comments

Comments
 (0)