diff --git a/Shared/Article Extractor/ArticleExtractor.swift b/Shared/Article Extractor/ArticleExtractor.swift index 281fe601d..bd2dfcd78 100644 --- a/Shared/Article Extractor/ArticleExtractor.swift +++ b/Shared/Article Extractor/ArticleExtractor.swift @@ -81,7 +81,11 @@ class ArticleExtractor { self.state = .complete DispatchQueue.main.async { - self.delegate?.articleExtractionDidComplete(extractedArticle: self.article!) + if self.article?.content == nil { + self.delegate?.articleExtractionDidFail(with: URLError(.cannotDecodeContentData)) + } else { + self.delegate?.articleExtractionDidComplete(extractedArticle: self.article!) + } } } catch { self.state = .failedToParse diff --git a/iOS/SceneCoordinator.swift b/iOS/SceneCoordinator.swift index e78178057..7170a21f5 100644 --- a/iOS/SceneCoordinator.swift +++ b/iOS/SceneCoordinator.swift @@ -963,6 +963,7 @@ extension SceneCoordinator: UINavigationControllerDelegate { extension SceneCoordinator: ArticleExtractorDelegate { func articleExtractionDidFail(with: Error) { + stopArticleExtractor() articleViewController?.articleExtractorButtonState = .error }