 			case .success(let syncStatuses):
 				processStatuses(syncStatuses)
 			case .failure(let databaseError):
+				self.statusProcessRunning = false
 				completion(.failure(databaseError))
 			}
 		}

					case .success(let articles):
						processWithArticles(articles)
					case .failure(let databaseError):
						completion(.failure(databaseError))
					}


	
	
	func refreshArticleStatus(for account: Account, completion: @escaping ((Result<Void, Error>) -> Void)) {
		guard !statusProcessRunning else {
			completion(.success(()))
			return
		}

		statusProcessRunning = true
		os_log(.debug, log: log, "Refreshing article statuses...")
		
		articlesZone.refreshArticles() { result in
			self.statusProcessRunning = false
			os_log(.debug, log: self.log, "Done refreshing article statuses.")
			switch result {
			case .success:
