From daee1f1b5c739f42ba54a1ebbb9655f5034e315f Mon Sep 17 00:00:00 2001 From: Nicholas Tay Date: Sun, 17 Jul 2022 01:56:43 +1000 Subject: 'weak self' stuff --- foray/Presenters/PenguinItemPresenter.swift | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'foray/Presenters/PenguinItemPresenter.swift') diff --git a/foray/Presenters/PenguinItemPresenter.swift b/foray/Presenters/PenguinItemPresenter.swift index 698b56e..c4553ae 100644 --- a/foray/Presenters/PenguinItemPresenter.swift +++ b/foray/Presenters/PenguinItemPresenter.swift @@ -12,11 +12,12 @@ class PenguinItemPresenter { let fetcher = ForayFetcher() func fetch(receiver: @escaping ([PenguinItemViewModel]) -> ()) { - fetcher.fetch(url: "https://users.windblume.net/~nick/upload/dummy.json") { (apiItems: [PenguinItemModel]) in + fetcher.fetch(url: "https://users.windblume.net/~nick/upload/dummy.json") { [weak self] (apiItems: [PenguinItemModel]) in // Callback to main thread here // There probably is a nicer way to do it, but we will DispatchQueue it back // from the Presenter-level for now (main thread from VC onwards) DispatchQueue.main.async { + guard let self = self else { return } receiver(self.transform(models: apiItems)) } } -- cgit