From c1ce11db19bf6ca6afc7c652c3283e0d61d75fbd Mon Sep 17 00:00:00 2001 From: dosiecki Date: Mon, 21 Sep 2015 14:38:34 -0700 Subject: [PATCH] Safer cleanup of adapter temps on DB rebuild. --- .../newsblur/database/FolderListAdapter.java | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/clients/android/NewsBlur/src/com/newsblur/database/FolderListAdapter.java b/clients/android/NewsBlur/src/com/newsblur/database/FolderListAdapter.java index c16d843da..32d8beecd 100644 --- a/clients/android/NewsBlur/src/com/newsblur/database/FolderListAdapter.java +++ b/clients/android/NewsBlur/src/com/newsblur/database/FolderListAdapter.java @@ -1,6 +1,7 @@ package com.newsblur.database; import java.util.ArrayList; +import java.util.Collection; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; @@ -514,18 +515,18 @@ public class FolderListAdapter extends BaseExpandableListAdapter { folders = Collections.emptyMap(); flatFolders = Collections.emptyMap(); - activeFolderNames.clear(); - activeFolderChildren.clear(); - folderNeutCounts.clear(); - folderPosCounts.clear(); + safeClear(activeFolderNames); + safeClear(activeFolderChildren); + safeClear(folderNeutCounts); + safeClear(folderPosCounts); feeds = Collections.emptyMap(); - feedNeutCounts.clear(); - feedPosCounts.clear(); + safeClear(feedNeutCounts); + safeClear(feedPosCounts); totalNeutCount = 0; totalPosCount = 0; - closedFolders.clear(); + safeClear(closedFolders); savedStoriesCount = 0; } @@ -674,4 +675,12 @@ public class FolderListAdapter extends BaseExpandableListAdapter { } }; + public void safeClear(Collection c) { + if (c != null) c.clear(); + } + + public void safeClear(Map m) { + if (m != null) m.clear(); + } + }