From 6e9e7f9659b3d7f32b62d1aafafbf676c2589e3d Mon Sep 17 00:00:00 2001 From: Floens Date: Mon, 2 Jul 2018 17:01:59 +0200 Subject: [PATCH] site respository: catch instantiateSiteFromModel exception. --- .../floens/chan/core/repository/SiteRepository.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Clover/app/src/main/java/org/floens/chan/core/repository/SiteRepository.java b/Clover/app/src/main/java/org/floens/chan/core/repository/SiteRepository.java index ab99f84a..075eacdb 100644 --- a/Clover/app/src/main/java/org/floens/chan/core/repository/SiteRepository.java +++ b/Clover/app/src/main/java/org/floens/chan/core/repository/SiteRepository.java @@ -10,6 +10,7 @@ import org.floens.chan.core.settings.json.JsonSettings; import org.floens.chan.core.site.Site; import org.floens.chan.core.site.SiteRegistry; import org.floens.chan.core.site.sites.chan4.Chan4; +import org.floens.chan.utils.Logger; import java.util.ArrayList; import java.util.Collections; @@ -22,6 +23,8 @@ import javax.inject.Singleton; @Singleton public class SiteRepository { + private static final String TAG = "SiteRepository"; + private DatabaseManager databaseManager; private Sites sitesObservable = new Sites(); @@ -84,7 +87,13 @@ public class SiteRepository { databaseManager.getDatabaseSiteManager().getAll()); for (SiteModel siteModel : models) { - SiteConfigSettingsHolder holder = instantiateSiteFromModel(siteModel); + SiteConfigSettingsHolder holder; + try { + holder = instantiateSiteFromModel(siteModel); + } catch (IllegalArgumentException e) { + Logger.e(TAG, "instantiateSiteFromModel", e); + break; + } Site site = holder.site; SiteConfig config = holder.config;